Git忽略本地文件更改

use*_*365 32 git

我试过了两个

git update-index --assume-unchanged config/myconfig
Run Code Online (Sandbox Code Playgroud)

编辑.git/info/exclude和添加config/myconfig

但是,当我做git pull时,我总是得到:

更新0156abc..1cfd6a5错误:对以下文件的本地更改将被merge覆盖:config/myconfig请在提交之前提交更改或存储它们,然后才能合并.中止

我错过了什么?

Nic*_*rdy 45

git pull希望您删除或保存当前的工作,以便它触发的合并不会导致与您未提交的工作发生冲突.请注意,如果要拉的更改在与本地未提交文件相同的位置创建文件,则只需删除/保存未跟踪的文件.

删除未提交的更改

跟踪文件

git checkout -f
Run Code Online (Sandbox Code Playgroud)

未跟踪的文件

git clean -fd
Run Code Online (Sandbox Code Playgroud)

保存更改以供日后使用

跟踪文件

git stash
Run Code Online (Sandbox Code Playgroud)

跟踪文件和未跟踪文件

git stash -u
Run Code Online (Sandbox Code Playgroud)

git pull以下情况之后重新申请您的最新藏匿:

git stash pop
Run Code Online (Sandbox Code Playgroud)

  • 最后一个命令应该是`git stash apply`或`git stash pop`.(`pop`只是`apply`-then-`drop`.我更喜欢在出现问题时将步骤分开,但是再次,我更喜欢创建临时提交而不是首先存储......) (2认同)

Eri*_*ric 12

你很可能已经上传了这些文件.

git add src/file/to/ignore
Run Code Online (Sandbox Code Playgroud)

要撤消暂存的文件,

git reset HEAD
Run Code Online (Sandbox Code Playgroud)

这将取消暂存文件,允许以下git命令成功执行.

git update-index --assume-unchanged src/file/to/ignore
Run Code Online (Sandbox Code Playgroud)

  • git update-index --no-assume-unchanged src/file/to/ignore (4认同)
  • 你好,我做了 `git update-index --assume-unchanged src/file/to/ignore`,但现在我想跟踪 /file/to/ignore 上的更改,我该如何撤消此操作? (3认同)
  • 我认为skip-worktree比不变的索引更好 (2认同)