git本地分支和远程分支如何关联

$git add . 把所有更改的文件上传
$git commit -am  '注释'  提交备注信息
$git push [origin 分支名字]

文章要记录的笔记是:
一、如何把本地新建分支同步到远程分支上(注:该分支在远程上没有)?
二、又如何在本地把远程分支上新建分支同步到本地(本地没有该分支)?

二、下载分支

2.如果本地新建了一个分支branch_name,但是在远程没有,这时候pushpull指令就无法确定该跟踪谁,一般来说我们都会使其跟踪远程同名分支,所以可以利用git push --set-upstream origin branch_name,这样就可以自动在远程创建一个branch_name分支,然后本地分支会track该分支。后面再对该分支使用pushpull就自动同步。无需再指定分支。

四、回退

1.其实在从远程分支分出来的分支都是跟踪分支(track),当对该分支进行pushpull时,如果该分支和远程分支同名git会知道推送到远程哪个分支,从哪个远程分支同步到本地分支。其实每次克隆一个仓库时,本地新建一个master分支来track远程origin/master。如果不同名,我们需要人为指定git push origin branch_name

一、分支处理

3.跟踪远程分支
1)如果远程新建了一个分支,本地没有该分支,可以用git checkout --track origin/branch_name,这时候本地会新建一个分支名叫branch_name,会自动跟踪远程的同名分支branch_name
2)用上面中方法,得到的分支名永远和远程的分支名一样,如果想新建一个本地分支不同名字,同时跟踪一个远程分支可以利用。
git checkout -b new_branch_name branch_name,这条指令本来是根据一个branch_name分支分出一个本地分支new_branch_name,但是如果所根据的分支branch_name是一个远程分支名,那么本地的分支会自动的track远程分支。建议跟踪分支和被跟踪远程分支同名。

删除当前仓库内未受版本管理的文件:$ git clean -f
恢复仓库到上一次的提交状态:$ git reset --hard
回退所有内容到上一个版本:$ git reset HEAD^
回退index.php这个文件的版本到上一个版本:$ git reset HEAD^ index.php
回退到某个版本:$ git reset 057d 
将本地的状态回退到和远程的一样:$ git reset –hard origin/master  
向前回退到第3个版本:$ git reset –soft HEAD~3

总结:一般我们就用git push --set-upstream origin branch_name来在远程创建一个与本地branch_name同名的分支并跟踪;利用git checkout --track origin/branch_name来在本地创建一个与branch_name同名分支跟踪远程分支。

本文由金沙官网线上发布于操作系统,转载请注明出处:git本地分支和远程分支如何关联

您可能还会对下面的文章感兴趣: