git的一些常用命令和协作流程
1. 远程仓库相关命令
命令 | 作用 |
---|---|
$ git clone | 克隆仓库 |
$ git remote -v | 查看远程仓库 |
$ git remote add [name] [url] | 添加远程仓库 |
$ git remote rm [name] | 删除远程仓库 |
$ git remote set-url --push[name][newUrl] | 修改远程仓库 |
$ git pull [remoteName] [localBranchName] | 拉取远程仓库 |
$ git push [remoteName] [localBranchName] | 推送到远端仓库 |
2. 本地的一些命令
命令 | 作用 |
---|---|
$ git clone | 克隆仓库 |
$ git add . | 添加文件到stage |
$ git commit -m 'comments here' | 把stage中的修改提交到本地仓库 |
$ git merge master | master分支合并到当前分支 |
$ git merge tool | 调用merge工具 |
$ git stash | 把未完成的修改缓存到栈容器中 |
$ git stash list | 查看所有缓存 |
$ git stash pop | 恢复本地分支到缓存状态 |
$ git blame someFile | 查看某个文件的每一行的修改记录(谁在什么时候修改的) |
$ git log | 查看当前分支上面的日志信息 |
$ git diff | 查看当前没有add的内容 |
$ git diff --cache | 查看已经add但是没有commit的内容 |
$ git diff HEAD | 上面两个内容的合并 |
$ git reset --hard HEAD | 撤销本地修改 |
HOME | 查看git config的HOME路径 |
HOME=/c/gitconfig | 配置git config的HOME路径 |
3. 分支(branch)操作相关命令
命令 | 作用 |
---|---|
$ git branch | 查看本地分支 |
$ git branch -r | 查看远端分支 |
$ git branch [name] | 创建本地分支 |
$ git branch -d [name] | 删除分支 |
$ git chechout [name] | 切换到这个分支 |
$ git chechout -b [name] | 创建并切换到新的分支 |
$ git push origin [name] | 创建远程分支(本地分支push到远程) |
$ git push origin test:master | 提交本地test分支作为远程的master分支 |
$ git push origin test:test | 提交本地test分支作为远程的test分支 |
$ git push origin :test | 刚提交到远程的test将被删除,但是本地还会保存的,不用担心 |
4. 版本(tag)操作相关命令
命令 | 作用 |
---|---|
git tag | 查看版本 |
git tag [name] | 创建版本 |
git tag -d [name] | 删除版本 |
git tag -r | 查看远端版本 |
git push origin [name] | 创建远程版本(本地版本push到远程) |
git push origin :refs/tags/[name] | 删除远程版本 |
团队协作的一般流程
克隆一个全新的项目,完成新功能并且提交:
- git clone XXX //克隆代码库
- git checkout -b test //新建分支
- modify some files //完成修改
- git add . //把修改加入stage中
- git commit -m '' //提交修改到test分支
- review代码
- git checkout master //切换到master分支
- git pull //更新代码
- git checkout test //切换到test分支
- git meger master //把master分支的代码merge到test分支
- git push origin 分支名 //把test分支的代码push到远程库
目前正在test分支上面开发某个功能,但是没有完成。突然一个紧急的bug需要处理
- git add .
- git stash
- git checkout bugFixBranch
- git pull --rebase origin master
- fix the bug
- it add .
- git commit -m ''
- git push
- git checkout test
- g2. it stash pop
- continue new feature's developmen
网友评论