我看到这个命令漂浮在各个站点上。
git checkout --track -b <...>
如果我在远程服务器上创建一个裸仓库并在两个不同的位置工作,那么最快和“批准”的方式是什么?
我做的是,我在笔记本电脑上创建了初始仓库,然后将更改推送到我的VPS仓库所在的“原产地”(裸仓库)。现在,在我的桌面上,我应该克隆我的回购?我问,因为我有两个分支,“dev”和“master”。一旦我在桌面上,我不确定是否应该“跟踪”回购或者我应该先克隆?如果我想在dev分支上工作,那么当我使用--track指令结账时该怎么办?
这是我到目前为止所做的。
在笔记本电脑上
cd devproject
git init
git add .
git commit -m "My first commit"
关于VPS回购
mkdir /home/sam/devproject.git
cd /home/sam/devproject.git
git --bare init
exit
返回笔记本电脑
cd devproject
git remote add origin ssh://myserver.com/home/sam/devproject.git
在桌面上(??)
git clone <..>
答案 0 :(得分:9)
您克隆存储库,但跟踪分支。您发布的结帐命令未完成:
git checkout --track -b new_local_branch_name origin/remote_branch_name
因此所需的步骤是:
答案 1 :(得分:4)
如果您不在存储库中,则上述命令将不起作用。要使用git,您必须始终首先创建一个存储库,方法是克隆已存在的存储库或使用git-init
并从头开始。
git checkout --track -b <branch> <remote-branch>
git checkout --track <remote-branch>
这两个命令创建一个新的本地分支来跟踪<remote-branch>
。第一个手动命名为<branch>
;第二个使用与遥控器相同的名称。
请记住,跟踪并不意味着自动更新 - 它只是指定分支应该从哪里推/拉,让git状态给出那些“你的分支在原始/主人之后的5次提交,并且可以快速 - 转发“消息。
答案 2 :(得分:0)
使用时
git checkout --track -b local_branch_name origin/remote_branch_name
(通常使用'local_branch_name'与'remote_branch_name'相同,存在快捷方式:
“git checkout -b --track origin / branch_name”),表示您创建名为“local_branch_name”的本地分支,您可以在其上创建提交,上游分支将为名为“remote_branch_name”的远程跟踪分支(跟踪/跟踪此远程跟踪分支)。
您需要记住,您不能直接在'origin / remote_branch_name'上提交;此远程跟踪分支用于跟踪远程“origin”中“remote_branch_name”分支的进度(“origin”是您从中克隆的远程的默认名称。)