git - 如果我将推送新创建的分支,主分支是否会发生变化(请参阅详细信息)?
问题描述
我正在处理一些快速更新票。我们决定在 master 分支中执行此操作,并将代码直接推送到存储库。但我最终做的不仅仅是快速更新,我们意识到这会影响很多地方。在进行更新时,我已将我的代码提交到本地 master 分支。现在,我们决定不能将这段代码直接推送到 master,因为我们最终没有足够的时间进行测试。我们将创建单独的分支并使用此更改推送此分支,发布后将合并它们并进行测试。
我的问题 - 如果我将从当前的主分支创建新分支并推送该新分支,这会影响我们的主分支吗?(因为我已经在本地提交了master分支)
我将按照以下步骤操作:
git branch upgrade_branch
git checkout upgrade_branch
git add (all upgrade work)
git commit -m "upgrade for xxxx"
git checkout master
git push origin upgrade_branch
先感谢您!
解决方案
只要您避免要求上游 ( origin
) Git 存储库更新其master
,就可以了。您概述的步骤应该很好用。但是,您可能希望在创建新分支后重新调整自己的master
分支名称,这样您就不能要求origin
存储库调整其master
.
这个特定的顺序:
git branch upgrade_branch git checkout upgrade_branch
可以缩短为:
git checkout -b upgrade_branch
然后,您可以按照您的概述进行添加和提交。之后:
git checkout master
不过,您可以运行git status
. 如果这表明您master
的. 这意味着即使你不小心跑了,也不会发生任何事情。origin/master
git reset --hard origin/master
master
origin/master
git push origin master
如果您push.default
设置为simple
(这是通常的情况),您将需要使用:
git push -u origin upgrade_branch
upgrade_branch
最初是在 Git 上创建新分支origin
。
注意:理解这一点的方法是每个 Git 都有自己的分支名称。您的分支名称不必与他们的相同。通常,您将使用与他们相同的分支名称,因为记住您的分支名称fred
对应于他们的分支wilma
,您的分支名称对应于barney
他们的分支,betty
等等 - 但原则上,至少,您的名称和他们的名称是完全不同。所以即使你改变了你的master
周围,这对他们 master
没有影响,除非并且直到你让你的 Git 调用他们的 Git 并要求他们改变他们的 Git 。
事情git push
是这样的:你的 Git 调用其他 Git,如果需要,给他们新的提交,然后要求或告诉他们改变他们的一些名字。您要求或告诉他们更改的姓名git push
有时取决于您,并要求他们根据您的姓名git push origin update_branch
更改(或创建)他们的姓名。update_branch
update_branch
推荐阅读
- angular - 默认路由不可访问
- r - 根据构面的存在有条件地修改ggplot主题?
- android - Android 检查设备是否具有通知访问权限
- reactjs - 如何合并 React App 和 Express App 以部署在单个项目上?
- geometry - 具有有限 sympy 段的错误
- tensorflow - 如何在 MacOs 上使用 Spyder 在 Python 上为 SSE4.1 SSE4.2 AVX AVX2 FMA 运行 TensorFlow
- python-3.x - Zipfile / shutil.make_archive 在德语变音符号上抛出 EncodeError
- angular - Angular:如何在 Flask 上服务并路由到不同的端点/路径?
- c# - 如何在帖子上验证财产
- java - 双重增强 for 循环以计算布尔 [] []?