在.git dir移动,返回后,Git没有检测到更改

时间:2011-06-27 17:19:55

标签: git

在添加&之前,我意外地将.git文件夹移出了我的工作目录。改变一些文件。当我在进行更改后替换.git文件夹时,git没有获取更改(我使用了git add .git commit -a)。我试图重现这个问题但失败了。有没有办法强制git扫描源树中的更改,或其他一些方法来解决这个问题?

2 个答案:

答案 0 :(得分:1)

您应该:

,而不是尝试将新的git文件夹“适合”到项目中
  1. 在同一台计算机上克隆一个新的仓库。
  2. 将所有旧文件(除.git文件夹以外的所有文件)放入新文件夹。
  3. 这将为您提供所有新修改的文​​件和“git status”
  4. 中列出的新文件
  5. 你现在可以毫无问题地提交和推送它们。
  6. 对于这个尴尬的案例,这个恕我直言是迄今为止最好的方法,我发现自己有几次。但是如果你的回购和中央回购之间存在巨大的差异,那就不会这样做,迫使你做出一个有时候不可取的巨型货币。

    你问过这已经很久了,希望这会给这个问题带来一些启发。

答案 1 :(得分:0)

不幸的是,我一直这样做。我有一个.git存储库/目录,我进出许多'发布版本'(来自另一个VC系统)。当我移动.git时,我可以执行'git status'并查找新版本中的更改内容。然后我做'git add -A; git commit -m'release-xyz''没有任何问题。我甚至可以使用'git symbolic-ref HEAD ...来更改分支,无需结账。当我完成提交时,我将.git移出并可以执行所有'git diff branch1..branch2'和其他行动。

所以,我没有看到你所描述的问题!