我目前正在教我的一些同事Git。他们都是艺术家,他们中的大多数可能永远不需要提交文件。然而,对于他们来说,能够获取项目的最新版本并测试其外观是很有价值的。
他们中的许多人遇到的问题是,他们上一次退出项目是在一个月前,并测试了一些东西,但当他们需要将项目更新到最新的主控时,他们就会遇到一堆合并冲突。我想给他们一个简单的命令,他们可以运行,本质上是说“我不关心我所做的任何更改,我只想回到大师”,这样他们就可以做一个git拉没有错误。
当我使用git时,我通常会这样做:
先使用git add -A,然后使用git stash
然而,现在我正在教其他人git,我想确保我没有引导他们走上一条糟糕的道路。我已经看到了使用git reset或git checkout的其他建议,但是有没有一种被普遍接受的最佳方式来说“我不在乎我的更改,把它们踢出气闸舱”?
发布于 2019-11-21 07:52:11
如果您真的想放弃所有本地更改,那么:
git fetch && git reset --hard origin/master请注意,这不会像stashing命令那样创建本地更改的备份,因此任何本地更改都将丢失且无法恢复。
然而,一个更好的工作流应该是那些拥有提交访问权限的人,以避免创建人们从存储库中提取数据时必须重置其本地存储库的情况。要做到这一点,请确保master只向前移动,用户不能强制推送到master,并确保自动生成的文件位于gitignore中。
发布于 2019-11-21 07:34:44
git checkout . && git pull origin master详述
放弃最新的更改: git checkout。
从master源接收更改: git拉取origin master
https://stackoverflow.com/questions/58964909
复制相似问题