git假设 - 不变和git stash

时间:2014-11-19 08:58:23

标签: git gitignore git-stash git-assume-unchanged

我将一些本地配置保留在假设未更改的文件中。我随着时间的推移创建了几个分支,假设未更改的文件介于两者之间(添加更多本地配置)。如果我尝试签出旧分支,我会得到:

error: Your local changes to the following files would be overwritten by checkout:
    <some assume-unchanged files>
Please, commit your changes or stash them before you can switch branches.

我不想提交它们并且不能存储它们(即使使用--include-untracked选项):

$ git stash
No local changes to save

是否有针对此的解决方案或更好的工作流程以保持本地更改?

2 个答案:

答案 0 :(得分:1)

目前您需要使用正确的.gitignore文件或排除机制。假设未改变意味着不同的东西。

答案 1 :(得分:0)

我正在处理类似的情况,发现使用.git/info/exclude比排除.gitignore更好

  

.git / info / exclude仅适用于单个克隆,因此   一个人在他的克隆中忽略了其他人无法获得的   人的克隆。例如,如果有人使用Eclipse进行开发   该开发人员将.build文件夹添加到   .git / info / exclude,因为其他开发人员可能未使用Eclipse。

When would you use .git/info/exclude instead of .gitignore to exclude files?