Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从orbit核取本地Git分支的最佳实践?_Git - Fatal编程技术网

从orbit核取本地Git分支的最佳实践?

从orbit核取本地Git分支的最佳实践?,git,Git,我目前正在教我的一些同事Git。他们都是艺术家,大多数人可能永远不需要提交文件。然而,对他们来说,能够获取项目的最新版本并测试事物的外观是很有价值的 他们中的许多人都遇到了一个问题,上一次他们在一个月前退出了项目并测试了一些东西,但是当他们需要将项目更新到最新的主版本时,他们会遇到一系列合并冲突。我想给他们一个简单的命令,他们可以运行,基本上说“我不关心我所做的任何更改,我只想回到master”,这样他们就可以无错误地执行git pull 当我使用git时,我通常会: git add-A 然后g

我目前正在教我的一些同事Git。他们都是艺术家,大多数人可能永远不需要提交文件。然而,对他们来说,能够获取项目的最新版本并测试事物的外观是很有价值的

他们中的许多人都遇到了一个问题,上一次他们在一个月前退出了项目并测试了一些东西,但是当他们需要将项目更新到最新的主版本时,他们会遇到一系列合并冲突。我想给他们一个简单的命令,他们可以运行,基本上说“我不关心我所做的任何更改,我只想回到master”,这样他们就可以无错误地执行git pull

当我使用git时,我通常会:

git add-A
然后
git隐藏

然而,现在我正在向其他人教授git,我想确保我没有引导他们走上一条不好的道路。我看到过使用
git reset
git checkout
的其他建议,但有没有一种公认的最佳方式来表达“我不在乎我的更改,把它们从气闸中炸出来”

详细地

放弃最新的更改:git checkout


从主源站接收更改:git pull origin master

如果确实要放弃所有本地更改,则:

git fetch && git reset --hard origin/master
请注意,这不会像stashing命令那样创建本地更改的备份,因此任何本地更改都将丢失且无法恢复


但是,更好的工作流适用于具有提交访问权限的人员,以避免造成从存储库中取出的人员必须重置其本地回购的情况。要做到这一点,请确保master仅向前移动,用户不能强制推送master,并确保自动生成的文件位于gitignore中。

让他们使用GUI应用程序这是否回答了您的问题?这里根本不需要
git-pull
git-fetch&&git-reset-hard-origin/master
非常简短。(如果他们想要保持重要的改变,那将是极具破坏性的!)@pkamb是的,我意识到这非常重要。到目前为止,我已经尝试了SourceTree和Git扩展,但我愿意接受建议。阿卜杜拉哈拉利不,不幸的是没有。我不希望他们合并更改,一般来说,放弃更改也可以。torek听起来真的很完美。高度破坏性是我想要的:D@AdamL:我怀疑GUI在这里对非技术用户是否有帮助,因为您希望将用户限制为几个特定的“安全”命令。使用GitGUI仍然需要用户理解Git心智模型。如果他们对Git模型没有直观的理解,GUI只会让非技术人员很容易点击进入他们无法摆脱的困境。我建议为非技术用户编写一些命令,告诉他们这些是他们应该使用的唯一命令。正如Q:
git pull origin master
中所述,这会导致合并冲突。
git fetch && git reset --hard origin/master