更新:我认为这与 Windows git 客户端 msysgit 的问题有关。抱歉给大家添麻烦了。 http://code.google.com/p/msysgit/issues/detail?id=379&colspec=ID%20Type%20Status%20Priority%20Component%20Owner%20Summary
我正在寻找一种方法来使多个客户端框与远程 git 存储库保持同步。强制从远程存储库更新并放弃客户端盒子上可能已更改的任何内容。
我遇到的问题是客户端框会修改一些文件(安装日志等),当我需要从远程存储库更新它们时,给我带来 merge 噩梦。我已经尝试了几个命令来尝试重置它们的本地更改(应该放弃本地更改),但似乎没有一个像宣传的那样工作(git reset --hard)。
我不想克隆然后删除这些盒子上的 .git 目录,因为我希望它们只更新更改,而不是每次都 pull 下整个存储库。
有什么想法吗?
最佳答案
我假设您有充分的理由为此使用 Git 而不是 rsync。
这就是我(在客户端)的做法:
git fetch origin
git reset --hard origin/master
git clean -dfx
请注意,您需要重置为 origin/master
而不是 HEAD
,因为本地 HEAD
不包括 origin 的最新提交(还没有)。
关于git - 本地 git 仓库强制从远程 git 仓库更新。 (胖客户端部署),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2290836/