Most Commonly Used Git Commands

此篇博客将记述在日常工作中,常用的 Git 命令。会持续的更新。

配置 Git 全局 账号信息。

  git config --global user.email "manageyp@gmail.com"
  git config --global user.name "Henry Lee"
  

为单个仓库 配置 Git 账号信息。首先,切换到项目目录下,然后执行命令:

  git config  user.email "lihengci@ups.com"
  git config  user.name "lihengci"
  

配置 Git 命令缩写,少敲几个键盘,节省点力气用来思考。

  git config --global --add alias.a 'add'
  git config --global --add alias.c 'commit'

  git config --global --add alias.d 'diff'
  git config --global --add alias.s 'status'

  git config --global --add alias.chk 'checkout'

  git config --global --add alias.plm 'pull origin master'
  git config --global --add alias.psm 'push origin master'
  

首次创建 Git 仓库。

  cd project

  git init
  git add .

  git commit -m "[New Feature] first init git"

  # init for the first time
  git remote add origin git@github.com:manageyp/project.git
  # update url
  git remote set-url origin git@github.com:manageyp/project.git

  git push origin master
  

拉取 Git 仓库。

  git clone git@github.com:manageyp/project.git
  cd project

  git fetch
  git checkout branch_name

  # 拉取远程代码
  git pull

  # 拉取代码,并避免无谓的合并
  git pull --rebase
  

删除,撤销 Git。

  git remote -v
  git branch -la

  # 删除文件
  git rm file_name

  # 删除本地分支
  git branch -d branch_name

  # 删除远程分支
  git push origin --delete branch_name

  # 撤销已经提交到远程的动作,已经拉取代码的,需要重新 clone
  git reset --hard dae217b
  git push -f

  # 重命名分支名称
  git branch -m old_name new_name

  # If you want to rename the current branch, you can simply do:
  git branch -m new_name

  # 日志查看
  git log --stat
  

临时 Git 仓库 Stash。

  # 将当期操作区内变更放入暂存栈内
  git stash

  # 将暂存栈内的信息取出
  git stash pop

  # 显示 Git 栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
  git stash list

  # 就可以将你指定版本号为 stash@{1} 的工作取出来,
  git stash apply stash@{1}

  # 将栈内数据清空
  git stash clear
  

分支 Branch 操作。

  # 创建分支
  git branch new_branch

  # 切换分支
  git checkout new_branch

  # feature 分支合并工作流
  git branch feature/name
  git rebase origin/master
  git checkout master
  # 合并分支,加 --no-ff 会有 merge commit
  git merge feature/name --no-ff
  git push origin master
  

Tag 标签操作。

  git tag v0.1.1
  git push origin master --tag
  

参考链接
Git 常用命令解说

2015-04-03

rocket-wing