git clone和git pull的区别

5
对于我的项目,我在github上保持在线存储库,同时在两台计算机(例如A,B)上保留本地存储库,我在其中编写代码并运行测试,并在其他三台计算机(例如C、D、E)上只运行测试。
现在,每当我想要在C、D、E上仅下载更新的代码时,有时会出现冲突,而仅使用git pull origin $someBranch是行不通的,可能是由于我为了测试目的而对本地源代码进行了一些小修改,而这些修改我并不想保留。
在这种情况下,我该怎么办?我应该总是使用git clone $URLofMyRepository吗?还是有更温和的方法?
1个回答

6

如果你不想保留更改,可以使用以下命令从你的分支中删除它们:

git checkout .

这将删除你的工作目录中的所有未保存更改,使你能够执行拉取操作。
git pull origin $someBranch

如果你想保留分支中的修改,请尝试暂存它们,然后运行pull命令。

git stash

假设没有其他隐藏的更改,这些更改可以在以后通过执行以下操作应用:
git stash apply

@RickyRobinson 我更新了我的回答。基本上它将会移除你对分支所做的所有更改,通过将文件恢复到最后一次提交的状态。 - Kevin Bowersox
好的。我在处理文件时出了些问题,出现了“文件未合并”的信息,这妨碍了pull的完成。因此最终我不得不删除所有内容并从存储库中进行clone操作。 - Ricky Robinson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接