1.首先从一个git远程仓库中clone项目到本地
git clone 仓库地址
2.创建开发分支
一般我们写代码不会在master分支上面写,而是新建一个分支
git checkout -b test
3.在test分支上面进行代码修改,比如完成某一项功能的开发
4.修改完之后提交代码到test分支
git add .
git commit -m "your comment"
5.review代码(非必需)在test分支上面开发完某一个功能之后,建议自己review一下修改的代码,通过与master分支进行对比
6.切换到master分支
git checkout master
7.更新master分支
git pull (将本地master与服务器最新代码保持一致)
8.重新切换到test分支
git checkout test
9.将master代码更新到test分支
git merge master(将master分支合并到当前分支)
10.处理完冲突之后将test分支提交到服务器
git push origin 分支名
11.提交Merge Request提交Merge Request之后代码审核组同事会对提交的代码进行审核,没问题则会同意合并请求,将test分支的代码合并到master分支
有时候有这样一个场景:你在本地某一个分支上面开发某一个功能,这时候有一个紧急bug需要处理,而当前功能没有开发完你不想提交,不提交又无法切换分支。这时候就可以用stash命令来暂存当前代码。
git add .
git stash
这时候你修改的代码都会暂存到一个类似于栈的容器中,代码会恢复到最后一次提交的位置。可以执行git stash list查看是否暂存栈的列表。
暂存代码之后就可以切换分支了,这时候你可以切换到别的分支修复bug,完了之后切换到该分支,执行下面命令进行恢复
git stash pop
有时候我们在修改别人代码的时候,想要查看某个文件具体某一行是谁写的,可以使用blame(责备的意思,用来追究责任)
git blame 文件
执行上面命令之后,每一行都会显示具体是谁提交的,并且可以用翻页键进行翻页。
是否觉得敲git命令有点麻烦?肯定的,我也这么觉得。
我们可以在 ~/.gitconfig 文件里面进行别名设置,即加上下面这几行
[alias]
st = status
ci = commit
br = branch
co = checkout
df = diff
别名可以根据自己习惯设置。
git branch -r/-a 查看远程分支/本地和远程分支
git checkout 分支名 切换分支
git checkout -b 分支名 新建并切换到新建的分支
git branch -d 分支名 删除本地分支
git pull 更新本地分支到最新
git merge 分支名 合并某个分支到当前分支
git diff 查看当前没有add的内容修改
git diff --cached 查看已经add,没有commit的改动
git diff HEAD 是上面两个命令的合并
git log --oneline --number 显示log,每个log显示一行,显示number条
git add . 将修改的代码添加到暂存区
git push origin 分支名 将指定分支推送到服务器
git status 查看哪些修改已加入暂存区待提交,哪些修改未加入暂存区
git reset HEAD 文件名 取消某文件的暂存