Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.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
如何使用Git正确地进行分支和合并?_Git_Github_Merge_Branch - Fatal编程技术网

如何使用Git正确地进行分支和合并?

如何使用Git正确地进行分支和合并?,git,github,merge,branch,Git,Github,Merge,Branch,我在网上搜索了所有其他网站,阅读了许多说明,但它没有按照我的预期工作和/或表现 我当时在master中工作,刚刚完成项目中0.1版的工作,希望从该版本中分离出来,以获得一个易于访问的0.1快照。我目前在master工作,因此我运行: git branch 0.1 git merge 0.1 这在我的机器上创建了一个分支,但我一辈子都不知道如何推动它。我最后跑了: git config push.default current 现在,我可以使用以下工具在项目之间切换: git checkou

我在网上搜索了所有其他网站,阅读了许多说明,但它没有按照我的预期工作和/或表现

我当时在master中工作,刚刚完成项目中0.1版的工作,希望从该版本中分离出来,以获得一个易于访问的0.1快照。我目前在master工作,因此我运行:

git branch 0.1
git merge 0.1
这在我的机器上创建了一个分支,但我一辈子都不知道如何推动它。我最后跑了:

git config push.default current
现在,我可以使用以下工具在项目之间切换:

git checkout
我能够很好地推动它们,并且在github上有两个分支。然后,我在0.1中添加了一个日志文件,它简单地说是“0.1快照测试”,提交并将其推送到fine。然后我决定在主分支中输入该日志,因此我运行:

git branch 0.1
git merge 0.1
然后我推了它。现在我的机器上保留了0.1,但从github中删除了0.1。编辑:实际上它看起来仍然在github上,只是在查看整个母版页时被隐藏


我想我真的不确定我应该如何使用git来跟踪以前但已完成的版本。我应该按哪个顺序分支和合并?这是因为我在Master工作,所以我感到困惑吗?我通读了所有这些,但它让我更加困惑:

我真的很喜欢Git flow的工作方式。当然,您可以手动执行所有分支、合并和标记步骤,但我认为Git flow更清楚地说明了这一点:


在git上创建新分支时,第一次推送应参考原点:

git推送原点0.1

希望我能正确回答这个问题。

你的问题只与推动有关

您可以这样做:

git push origin master
git push origin 0.1
-- or all
git push --all origin
甚至对于所有分支机构:


如果推送没有像您期望的那样自动工作,您可以始终明确:

git push origin localBranchName:remoteBranchName
这会将本地分支推送到远程分支,如果远程服务器上没有这样的分支,就会创建它

您可以使用类似的语法删除远程分支:

git push origin :remoteBranchName