在gitbarerepository中有没有办法推送一个现在不在HEAD中的分支?例如,我有两个分支:
$ git branch * master another
我有两个遥控器origin和another。我需要能够从another推到another/another只是在一个命令,而不改变头部。
origin
another
another/another
rqmkfv5c1#
所有这些“另一个另一个”在原来的问题,答案和大量的评论是如此混乱(这是一个完美的例子,为什么重要的是命名你的东西摆在首位),我不能不帮助(双关语无意)写另一个答案如下。Q:在git(bare)仓库中有没有办法推送一个在HEAD中not的分支?例如,我有两个分支和两个远程分支,我需要在不改变HEAD的情况下,只使用一个命令就可以从feature推送到upstream/feature。
feature
upstream/feature
$ git branch * master feature $ git remote origin upstream
答:执行git push remote_name分支_name,在上面的例子中,它看起来是这样的。
$ git push upstream feature
Q:是不是意味着会把本地的feature推到upstream/feature?我一直以为会把当前的HEAD推到upstream/feature。答:是的。feature部分是一个 * refspec *,格式为src:dst。这意味着将本地分支src推送到远程分支dst。如果省略:dst,则本地分支src将被推送到远程分支src。您也可以指定其他名称作为远程分支。只需执行以下操作:
src:dst
src
dst
:dst
$ git push upstream feature:cool_new_feature
(感谢@gabriele-petronella和@alexkey为这个答案提供素材。)
v64noz0r2#
使用git push可以指定远程和本地
git push
git push remotename branchname
fv2wmkja3#
当我尝试使用--set-upstream(-u)为远程新分支执行push a时
--set-upstream
-u
git push MyLocalBranch -u origin MyLocalBranch
而我没有 checkout 分支,我收到了错误
fatal: 'MyLocalBranch' does not appear to be a git repository fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
感谢注解git将NOT当前分支推到远程是的。(第二个)另一个是refspec,它(一般)有src:dst的格式。这意味着将本地分支src推送到远程分支dst。如果省略:dst,本地分支src将被推送到远程分支src。从Lars Noschinski开始,我认为解决方案是调用
git push -u origin MyLocalBranch:MyLocalBranch
3条答案
按热度按时间rqmkfv5c1#
所有这些“另一个另一个”在原来的问题,答案和大量的评论是如此混乱(这是一个完美的例子,为什么重要的是命名你的东西摆在首位),我不能不帮助(双关语无意)写另一个答案如下。
Q:在git(bare)仓库中有没有办法推送一个在HEAD中not的分支?例如,我有两个分支和两个远程分支,我需要在不改变HEAD的情况下,只使用一个命令就可以从
feature
推送到upstream/feature
。答:执行git push remote_name分支_name,在上面的例子中,它看起来是这样的。
Q:是不是意味着会把本地的
feature
推到upstream/feature
?我一直以为会把当前的HEAD推到upstream/feature
。答:是的。
feature
部分是一个 * refspec *,格式为src:dst
。这意味着将本地分支src
推送到远程分支dst
。如果省略:dst
,则本地分支src
将被推送到远程分支src
。您也可以指定其他名称作为远程分支。只需执行以下操作:(感谢@gabriele-petronella和@alexkey为这个答案提供素材。)
v64noz0r2#
使用
git push
可以指定远程和本地fv2wmkja3#
当我尝试使用
--set-upstream
(-u
)为远程新分支执行push a时而我没有 checkout 分支,我收到了错误
感谢注解git将NOT当前分支推到远程
是的。(第二个)另一个是refspec,它(一般)有src:dst的格式。这意味着将本地分支src推送到远程分支dst。如果省略:dst,本地分支src将被推送到远程分支src。
从Lars Noschinski开始,我认为解决方案是调用