Nemo

Nemo 关注TA

路漫漫其修远兮,吾将上下而求索。

Nemo

Nemo

关注TA

路漫漫其修远兮,吾将上下而求索。

  •  普罗旺斯
  • 负责帅就完事了
  • 写了1,496,113字

该文章投稿至Nemo社区   编程综合  板块 复制链接


Git常用命令

发布于 2017/05/24 10:54 3,795浏览 0回复 1,988

  • 命令行不用每次输入密码
  1. git config credential.helper store
  • 正确使用fetch/merge # git pull = git fetch + git merge FETCH_HEAD # 一般少用 git pull,推荐用 git fetch  <remote> + git merge  <remote>/ <refspec>,可以更灵活地控制流程(需要的时候才merge) # 注意不是 git fetch  <remote>  <refspec> # 注意也不是 git merge  <remote>  <refspec>,那是完全不同的含义
  1. git fetch origin
  2. git merge origin/dev
  • 正确使用rebase

# 不喜欢用pull的同学用这个

  1. git fetch origin
  2. git rebase origin/dev

# 喜欢用pull的同学用这个 # 使用pull的潜在缺点在于,有时候你只想fetch不想merge/rebase

  1. git pull --rebase

# 如果有冲突,修改完相关文件后,再rebase

  1. git add <filename>
  2. git rebase --continue

# rebase时忽略当前冲突,不做merge

  1. git rebase --skip

# rebase完了,最后push

  1. git push origin dev

# 放弃本次rebase

  1. git rebase --abort

# 新建一个本地标签

  1. git tag -a v1.0.4 -m "2015-09-26 released"

# 删除一个本地标签

  1. git tag -d v1.0.4

# 把本地标签推送到远程服务器

  1. git push origin v1.0.4

# 删除一个远程标签

  1. git push --delete origin v1.0.4

# 新建分支对应某个标签

  1. git checkout -b release_V2.8.2 v2.8.2

# 删除远程分支

  1. git push origin --delete <branch_name>

# 查看某个标签

  1. git show v2.1.0

#合并dev分支代码到master分支步骤

  1. 1. 获取最新代码,把本地代码跟远程代码同步
  2. git fetch origin
  3. git checkout dev
  4. git rebase origin/dev
  5. git checkout master
  6. git rebase origin/master
  7. 2. 切换到dev分支,跟master分支做rebase
  8. git checkout dev
  9. git rebase master
  10. 这一步可能出现代码冲突,按上面描述处理冲突
  11. 3. 切换到master分支,跟dev分支做rebasemerge
  12. git checkout master
  13. git rebase dev
  14. 4. 将合并后的代码推送到远程
  15. git push origin master
  16. 当有冲突时,强行推送
  17. git push origin master -f
  18. 5. 在第1步,devmaster rebase时如果有冲突,还要把最新的dev也推送到远程 (没有冲突就不用推送了)
  19. git checkout dev
  20. git push origin dev

#设置Meld为比较/合并工具 (前提是先要安装Meld,并且在环境变量PATH中加入执行文件的路径)

  1. git difftool --tool=meld
  2. git mergetool --tool=meld

#分支管理

  1. 新建分支 推送到远程
  2. 当前是master分支
  3. git checkout -b dev
  4. git push origin dev

  5. 其它client 切换到dev分支
  6. git fetch origin
  7. git branch --track dev origin/dev

  8. 删除远程分支
  9. git push origin --delete branch_name

# 配置选项

  1. git config http.proxy 'socks5://127.0.0.1:1080'

# 移除配置选项

  1. git config --unset https.proxy

# 删除本地分支

  1. git branch -d release_V2.8.2

# 回滚指定文件到某个commit

  1. git checkout 593151a9740f47d00493f4af513255437fded47b db/platform/db/update/V0.0.1_002__data.sql
本文标签
 {{tag}}
点了个评