git指令备忘

基本配置

  • 通过终端命令修改
1
2
3
4
5
git config --global user.name "xxx"
git config --global user.email "xxx@gmail.com"
git config --global alias ci commit
git config --global alias dog log --all --decorate --oneline --graph
git config --global alias mg merge
  • vi ~/.gitconfig 直接修改文件配置也可以
1
2
3
4
5
6
7
8
9
10
[user]
name = xxx
email = xxx@gmail.com
[alias]
co = checkout
br = branch
ci = commit
st = status
dog = log --all --decorate --oneline --graph
mg = merge

基本命令

1
2
git add -A
git commit -m "备注"

分支、合并

创建分支:git branch f1

删除分支:git branch -d f1 _强制_:git branch -D f1

查看所有:git branch -a _查看远程分支_:git branch -r

切换分支:git checkout f1

创建并切换到:git checkout -b f2

远端添加分支:git push origin f1 _新命名_:git push origin f1:newname

删除远端分支:git push origin :f1

合并:git merge f1

回滚、撤销

git reset

  • 相对回滚

git reset mater^

回退两次: git reset mate^^

回退n次: git reset mater~n

  • 绝对回滚

回退到指定版本对应ID:git reset 96147bff8

  • 放弃本地所有变更,回滚到指定版本

git reset --hard 96147bff8

reset三种模式区别

  1. –hard:重置位置的同时,直接将 working Tree工作目录、 index 暂存区及 repository都重置成目标Reset节点的內容,所以效果看起来等同于清空暂存区和工作区
  2. –soft:重置位置的同时,保留working Tree工作目录和index暂存区的内容,只让repository中的内容和 reset目标节点保持一致,因此原节点和reset节点之间的【差异变更集】会放入index暂存区中(Staged files)。所以效果看起来就是工作目录的内容不变,暂存区原有的内容也不变,只是原节点和Reset节点之间的所有差异都会放到暂存区中
  3. –mixed(默认):重置位置的同时,只保留Working Tree工作目录的內容,但会将 Index暂存区Repository 中的內容更改和reset目标节点一致,因此原节点和Reset节点之间的【差异变更集】会放入Working Tree工作目录中。所以效果看起来就是原节点和Reset节点之间的所有差异都会放到工作目录中

git revert

撤销一次: git revert HEAD^

回退n次: git revert HEAD~n

回退到指定版本对应ID:git revert 96147bff8

git revert 撤销某次操作,此次操作之前和之后的 commit 和 history 都会保留,并且把这次撤销作为一次最新的提交。git revert是提交一个新的版本,将需要revert的版本的内容再反向修改回去,版本会递增,不影响之前提交的内容。相比 git reset,它不会改变现在的提交历史。

git revert 可以用在公共分支上,git reset 应该用在私有分支上。

远程仓库

添加:git remote add origin <url> _上游_:``git remote add upstream `

修改:git remote set-url origin <url>

查看:git remote -v

删除:git remote rm upstream

图形工具

Sourcetree - A free Git client for Windows and Mac
Tower - the most powerful Git client for Mac and Windows.
GUI Clients - 更多客户端信息

优秀教程

git - 简明指南l
猴子都能懂的GIT入门

文章目录
  1. 1. 基本配置
  2. 2. 基本命令
  3. 3. 分支、合并
  4. 4. 回滚、撤销
    1. 4.1. git reset
      1. 4.1.1. reset三种模式区别
    2. 4.2. git revert
  5. 5. 远程仓库
  6. 6. 图形工具
  7. 7. 优秀教程