在提交上,我正在重建节点项目的应用程序,并将构建文件放置在dist
目录中。为了避免dist
目录中已经上演过的文件问题,我要执行以下操作:
- 解开DIST目录
- 反向Dist目录中的任何更改
- 库存任何未分段或未跟踪的文件
- 构建应用程序
- 阶段
dist
目录 - 解开未分段和未跟踪的文件
这些是我使用的命令:
git reset HEAD -- dist &&
git checkout -- dist &&
git stash push -k -u -m "build" &&
npm run build &&
git add . &&
git stash pop
直到今天,这都很好。在运行上述命令后,我会使用未删除和未跟踪的删除文件获得一些奇怪的行为。
在运行上述命令之前,git status
输出如下:
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: scripts/substenv.js
运行命令后git status
输出看起来像这样:
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
(use "git push" to publish your local commits)
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: scripts/substenv.js
Untracked files:
(use "git add <file>..." to include in what will be committed)
scripts/substenv.js
git stash push -k -u -m "build"
命令后出现未跟踪的文件。
任何人都可以解释为什么/为什么会发生什么?
您需要将文件添加到.gitignore
中,以便在Untracked files
列表中停止查看它。
基本上您的藏匿处包含文件,然后在您重新应用藏匿处将其添加回。
在旁注上,我对您的设置/命令有点混淆,为什么不将dist
文件夹添加到.gitignore
文件?
基于注释更新:
我认为您可能需要更新npm build
脚本。由于您需要发布dist
文件夹,因此应签入其中的文件。使用build
文件夹作为中间步骤,然后将其添加到.gitignore
。
- 使用
npm build
构建应用程序 - 这将在
build/
文件夹中创建一堆文件(应忽略( - 复制您想要/需要签入的文件中的
dist
文件夹 - 利润