使用git,如何将本地部署分支重置为origin';谁的版本?
我有一个本地分支,名为使用git,如何将本地部署分支重置为origin';谁的版本?,git,Git,我有一个本地分支,名为deployment。此分支也位于原点。如何将本地部署分支重置为源部署分支的状态 如下所示: git fetch origin git reset --hard origin/deployment 这是可能的吗?这是正确的,但要小心-git reset--hard会丢弃所有未提交的更改,即仅在工作树或索引(暂存区域)中的更改。另外,只需确保您确实在git checkout deployment的deployment分支上,因为git reset总是更改当前分支的位置,即H
deployment
。此分支也位于原点
。如何将本地部署分支重置为源部署分支的状态
如下所示:
git fetch origin
git reset --hard origin/deployment
这是可能的吗?这是正确的,但要小心-
git reset--hard
会丢弃所有未提交的更改,即仅在工作树或索引(暂存区域)中的更改。另外,只需确保您确实在git checkout deployment
的deployment
分支上,因为git reset
总是更改当前分支的位置,即HEAD
指向的分支。谢谢,回答一个问题“因为git reset总是更改当前分支的位置“:这是否意味着我无需执行原始/部署
?相反,我应该做git签出部署;git reset--硬原点
?不,后面没有origin
是远程服务器的名称,类似于存储库URL的昵称<代码>起源/发展,另一方面,是一个远程跟踪分支。当您执行git fetch
时,远程跟踪分支origin/development
将更新到分支development
在存储库origin
中的位置。在这样做之后,您通常会执行(a)git merge origin/development
(b)git rebase origin/development
或(c)git reset——硬源代码/开发
(如果您想放弃本地工作,只使用源代码开发的最新版本)@Tom:另一点:您可以使用远程服务器的名称(如原点
)在一个需要提交的地方,但在这种情况下,它将被解释为refs/remotes/origin/HEAD
,而不是refs/remotes/origin/development
。非常感谢您的指导,这澄清了很多。但是,出于某种原因,部署
分支似乎没有设置为当我执行git reset时的最新提交--硬源/部署
。当我执行git merge-origin/deployment
时,它会快速前进,然后工作。但整个想法是,我不必合并,因为我只想接管所有远程更改并删除所有本地更改。知道我可能做错了什么吗还有什么我可以和你分享的吗?谢谢,我找到了。我的部署脚本还有一个问题。