我都已经尝试过了。
git update-index --assume-unchanged config/myconfig
并且编辑.git/info/exclude
并添加config/myconfig
然而,当我执行git pull时,总是得到以下结果:
正在更新0156abc..1cfd6a5 错误:您对以下文件所做的本地更改将被合并覆盖: config/myconfig 请在合并之前提交您的更改或将它们存储起来。 终止
我错过了什么吗?
我都已经尝试过了。
git update-index --assume-unchanged config/myconfig
并且编辑.git/info/exclude
并添加config/myconfig
然而,当我执行git pull时,总是得到以下结果:
正在更新0156abc..1cfd6a5 错误:您对以下文件所做的本地更改将被合并覆盖: config/myconfig 请在合并之前提交您的更改或将它们存储起来。 终止
我错过了什么吗?
git pull
要求你删除或保存当前的工作,以使其触发的合并不会与你未提交的工作产生冲突。请注意,如果你拉取的更改在同一位置创建了文件,则只需要删除/保存未跟踪的文件。
git checkout -f
git clean -fd
git stash
git stash -u
git pull
后重新应用你最近的存储:git stash pop
git stash apply
或者 git stash pop
。(pop
就是先执行apply
再执行drop
。我倾向于将这两个步骤分开,以防出现问题,但与此同时,我更喜欢创建临时提交而不是一开始就进行贮藏...) - torekgit stash pop
了。谢谢。 - Nick McCurdy你很可能已经将文件暂存了。
git add src/file/to/ignore
要撤销已暂存的文件,
git reset HEAD
这将取消暂存文件,使得下一个 git 命令能够成功执行。git update-index --assume-unchanged src/file/to/ignore
git update-index --assume-unchanged src/file/to/ignore
命令,现在我想要跟踪 /file/to/ignore
文件的更改,该怎么撤销这个命令呢? - user1735921在执行 git pull
命令之前,你可能需要先执行 git stash
命令。这是因为 Git 会读取旧的配置文件。因此,请执行以下命令:
git stash
git pull
git commit -am <"say first commit">
git push
还可以参考git-stash(1)手册页面。
如果您不想保留本地更改,那么执行以下命令以忽略(永久删除)本地更改。
git checkout <filename>
或git checkout -- .
)git reset <filename>
或git reset
),然后再执行checkout命令(git checkout <filename>
或git checkout -- .
)git clean -fd
)如果您不想丢失本地更改,请将其存储并进行pull或rebase。稍后从存储中合并您的更改。
git stash
,然后从存储库获取最新更改git pull orign master
或git rebase origin/master
,然后从stash中合并您的更改git stash pop stash@{0}
git checkout <filename>
的影响。 - Anshul Sahnigit restore
。详细信息请查看this stackoverflow和www.git-tower.com。git restore .
或 git restore file1 file2 ...
放弃本地未跟踪的更改:
git clean -fd
取消暂存更改:
git restore --staged .
或 git restore --staged file1 file2 ...
git checkout -f $branch