目录
1、新建分支:
a.创建本地分支(以创建dev分支为例)
命令:$ git checkout -b dev
$ git checkout -b dev
Switched to a new branch 'dev'
以上命令是下面两条命令的简写:
$ git branch dev
$ git checkout dev
以上命令只是在本地创建了dev分支,查看本地和远程分支:
命令:$ git branch -a
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
b.将本地dev分支推送到远程服务器--创建远程分支
通过a步骤在本地创建了dev分支,远程服务器还没有dev分支,需要将本地创建的dev分支push到远程服务器,这样远程服务器就创建了本地dev对应的远程分支。
>方法一:
命令:$ git push origin dev
$ git push origin dev
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To http://git.fj-yuchen.com:10080/thinkunion-product/smart-park.git
* [new branch] dev -> dev
查看分支:
命令:$ git branch -a
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/dev
remotes/origin/master
>方法二:
命令:$ git push origin dev:dev_test
$ git push origin dev:dev_test
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To http://git.fj-yuchen.com:10080/thinkunion-product/smart-park.git
* [new branch] dev -> dev_test
dev 本地分支名;
dev_test 远程分支名;
(建议将本地分支和远程分支名用一样名字命名)
查看分支:
命令:git branch -a
$ git branch -a
* dev
master
remotes/origin/HEAD -> origin/master
remotes/origin/dev_test
remotes/origin/master
c.将本地分支与远程分支做关联
通过a步骤和b步骤后创建了本地分支和远程分支,但还不能做pull和push操作,因为本地新建的分支还没有和远程服务器做关联,没有关联做 git pull:
命令:$ git pull
$ git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.
git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:
git branch --set-upstream-to=origin/<branch> dev
关联命令:$ git branch --set-upstream-to=origin/dev
$ git branch --set-upstream-to=origin/dev
Branch 'master' set up to track remote branch 'dev' from 'origin'.
再做git pull就没问题了:
命令:$ git pull
$ git pull
Already up to date.
【a、b、c 实践操作】
2、提交本地分支文件到远程分支
a.查看状态(查看被修改的文件)
命令:$ git status
$ git status
On branch dev
Your branch is up to date with 'origin/dev'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: README.md
b.追踪新文件
命令:$ git add .
$ git add .
c.提交
命令:$ git commit -m 'update testing'
$ git commit -m 'update testing'
[dev fb3b434] update testing
1 file changed, 1 insertion(+), 1 deletion(-)
* 'update testing' 提交的备注
d.更新
命令:$ git pull
$ git pull
Already up to date.
e.push到远程服务器
命令:$ git push
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 296 bytes | 296.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
To http://git.fj-yuchen.com:10080/liutong/EthanLiu.git
4978e16..fb3b434 dev -> dev
3、合并
git合并分支代码--例:将dev_test合并到master
需先在dev_test分支拉取最新代码,且代码无冲突
a.切换到master分支
命令:$ git checkout master
$ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
b.更新
命令:$ git pull
$ git pull
Already up to date.
c.合并
命令:$ git merge dev
$ git merge dev
Updating 4978e16..fb3b434
Fast-forward
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
d.push到远程服务器的master分支
命令:$ git push
$ git push
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To http://git.fj-yuchen.com:10080/liutong/EthanLiu.git
4978e16..fb3b434 master -> master
【步骤2 和 步骤3 实践操作】