我有一个名为' my_local_branch' 的本地分支,它跟踪一个远程分支origin/my_remote_branch.
现在,远程分支已经更新,我正在' my_local_branch'并且想要引入这些变化.我应该这样做:
git pull origin my_remote_branch:my_local_branch
Run Code Online (Sandbox Code Playgroud)
这是正确的方法吗?
使用git时我通常的工作流程是这样的:
然而,现在我希望能够push和pull从该远程存储库,而无需指定我推或拉离; 我希望我的本地主人跟踪远程主人.
这样做的正确方法对我来说并不清楚,而且我无法从文档中确定它,即使它不应该只是一个命令.
因为它是每个存储库只执行过一次的事情,所以我通常使用两个简单但是hacky解决方案中的一个:
git clone创建新的本地存储库,并删除旧的存储库.在git克隆之后,新的存储库被设置为跟踪原点.我想我应该能够运行一个命令,可能是某种形式git remote来设置一个现有的存储库,让主跟踪一个远程主控.谁能告诉我这个命令是什么?
我有一个问题git push origin master:
origin是遥控器(又名GitHub)git push origin master 是相同的 git push origin master_on_my_machine:master_on_github我不知道是否:
master_on_my_machine 等于 /refs/heads/mastermaster_of_github 等于 /refs/remotes/origin/master如果它是平等的,那么它应该可行
git push origin refs/heads/master:refs/heads/origin/master吗?
最后,我想要做的只是输入git push和git pull时间:
git push和git pull.我们发现自己处于主人有新功能工作的情况,而feature1(分支主人)是稳定的主人.我们怎样才能改变事物以便他们"交易场所"?即,feature1成为主人,主人成为newfeaturebranch?
我发现了几个类似的SO问题,但在这些情况下,他们不再关心旧的主提交.在这里,我们希望保留当前的master作为新的newfeaturebranch.
我想过一种方法可以做到这一点:
一切都在标题中......
我读到了这个问题:查看Unpushed Git提交
但我不明白为什么git status在master分支中显示所有未提交的提交,但在其他分支中不显示任何内容.
有人可以解释一下吗?
编辑
这是我做/得到的命令和输出:
aurelien@server:/home/repo/$ git branch
new_feature
* master
aurelien@server:/home/repo/$ git checkout new_feature
Switched to branch 'new_feature'
aurelien@server:/home/repo/$ echo test > newfile.txt
aurelien@server:/home/repo/$ git add newfile.txt
aurelien@server:/home/repo/$ git commit -m "Test commit"
[new_feature 51c6a64] Test commit
1 file added
aurelien@server:/home/repo/$ git status
# On branch new_feature
nothing added to commit
Run Code Online (Sandbox Code Playgroud)
使用时为什么我的提交没有出现git status?
在使用--track(或保留默认值,或--notrack)创建分支后,您希望提醒您分支正在跟踪的内容.除了搜索.git/config文件之外,还有一种方法可以显示分支正在跟踪的内容吗?
我发现知道git branch --set-upstream-tovs git remote add origin或者偶数之间的区别有点令人困惑git remote add upstream
基本上我创建了git init --bare一个在网络上共享的裸存储库,以便其他开发人员也可以推送到它,这样我们就可以在本地对我们的项目进行版本控制,但不确定我应该在上面三个(或者如果还有其他)中运行哪个命令跟踪中央回购,例如我们将我们的变化从所有项目推送到中央裸仓库并从中拉取/取出.
有人可以请教这个吗?
让我们说我已经创建了一个新功能 git flow feature start FEATURENAME
然后发布它 git flow feature publish FEATURENAME
现在,我的同事希望与我合作完成此功能,所以他确实如此
git flow feature pull FEATURENAME
这将根据远程仓库中的功能分支在其本地仓库上创建一个新分支.但是,这并不会将其本地功能分支设置为跟踪远程功能分支,因此现在他必须手动跟踪此分支.
这一额外步骤背后的原因是什么?为什么不将feature pull命令设置为跟踪?
什么是git flow feature pull和之间的工作流程差异git flow feature track.
在哪些情况下你会使用哪些?
~/www> git branch --track live origin/master
fatal: Not a valid object name: 'origin/master'.
~/www> git remote
origin
~/www> git branch
* master
test_branch
working_branch
Run Code Online (Sandbox Code Playgroud)
我还尝试创建一个跟踪分支:
git branch live
git branch --set-upstream live origin/master
Run Code Online (Sandbox Code Playgroud)
但我得到了同样的错误
一些存储库克隆我允许我这样做:
% git pull
% git push
Run Code Online (Sandbox Code Playgroud)
但是其他存储库要求我输入:
% git pull origin master
% git push origin master
Run Code Online (Sandbox Code Playgroud)
我想我在后一种情况下遗漏了什么 - 有谁知道这里发生了什么(不是)?我正在使用最新的git版本,显然不能很好地使用它.