git 常用命令笔记

一.安装配置

1.配置个人的用户名称和电子邮件地址:

1
2
git config --global user.name "your name"
git config --global user.email "your email"

2.查看配置信息

1
git config --list

3.生成 SSH Key (一路回车就行)

1
ssh-keygen -t rsa -C "youremail@example.com"

二.创建仓库

1
git init
1
git clone <repo> <directory>

参数说明:

repo : Git 仓库。

directory : 本地目录。

三.基本操作

1.文件添加到缓存区

缓存所有

1
git add .

缓存指定文件

1
git add  [filename]

2.文件修改后未执行 git add 操作想恢复原样

恢复所有

1
git checkout   .

恢复指定文件

1
git checkout  [filename]

3.文件修改后执行了 git add 操作想恢复原样 即 取消之前的 git add 添加

恢复所有

1
git reset .

恢复指定文件

1
git reset [filename]

4.查看修改状态

查看上次提交之后是否有修改。

1
git status   or   git status -s  # 简短的结果输出

查看执行 git status 的结果的详细信息。

1
git diff

尚未缓存的改动:git diff

查看已缓存的改动: git diff --cached

查看已缓存的与未缓存的所有改动:git diff HEAD

显示摘要而非整个 diff:git diff --stat

5.将缓存区内容添加到仓库中

1
git commit -m  [message]

跳过 git add 提交缓存的流程

1
git commit -a  # 然后进入vim编辑器写信息

6.执行 git commit 后修改提交信息

1
git commit --amend # 然后进入vim编辑器修改

7.版本回退

回退到上一个版本

1
git  reset --hard HEAD^

回退到任意版本(git log –oneline 或者 git reflog 查看版本号)

1
git  reset --hard HEAD~100  # HEAD~100 :版本号

8.代码提交

添加远程仓库

1
git remote add [shortname] [url]  # 常用 git remote add origin  [url]

查看远程仓库

1
git remote -v

远程仓库的重命名 (origin 改成 new_origin)

1
git remote rename origin new_origin

远端仓库 origin 的移除

1
git remote rm origin

提交代码并关联仓库和分支

1
git push -u origin master # 以后执行 git push 就可以了

四.分支操作

1.新建

1
git branch [branchname]

2.切换

1
git checkout [branchname]    #切换并新建   git  checkout -b  [branchname]

3.查看所有分支

1
git branch -a

4.删除分支

1
2
# 删除本地分支
git branch -d [branchname]
1
2
# 删除远程分支
git push origin --delete [branchname]

5.其他分支合并到当前分支

1
git merge [otherbranchname]   #取消合并  git merge  --abort

6.其他分支合并到当前分支(变基)

1
git rebase [otherbranchname]    #撤销rebase   git reset --hard [版本号]

五.标签操作

1.给当前版本打标签

1
git tag -a [tagname]  # 标签名  -m  "备注"

2.给某个版本打标签(特定版本)

1
git tag -a  HEAD~  # 版本号 git log --oneline 或者 git reflog 查看版本号)

3.同步到远程

1
git push origin [tagname]  #将tagname标签提交到服务器
1
git push origin -tags #将本地标签一次性提交到服务器

3.删除标签

1
git tag -d "tagname"   or   git tag -d HEAD~

同步到远程

1
2
#远程仓库删除,注意这里的空格
git push origin :[tagname]

4.查看标签

1
git tag

六. 保存和恢复工作进度(stash) (git add . 之前操作)

1.执行存储,添加备注。

1
git stash save "message"    # git stash 也可以,但查找时不方便识别。

2.查看 stash 存储列表

1
git stash list

3.显示做了哪些改动

1
git stash show  # 显示做了哪些改动,默认 show 第一个存储,如果要显示其他存贮,后面加 stash@{\$num},比如第二个 git stash show stash@{1}

4.恢复存储

1
git stash apply  # 应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即 stash@{0},如果要使用其他个,git stash apply stash@{\$num} , 比如第二个:git stash apply stash@{1}
1
git stash pop  # 命令恢复之前缓存的工作目录,将缓存堆栈中的对应 stash 删除,并将对应修改应用到当前的工作目录下,默认为第一个 stash,即 stash@{0},如果要应用并删除其他 stash,命令:git stash pop stash@{\$num} ,比如应用并删除第二个:git stash pop stash@{1}

5.丢弃存储,从列表中删除这个存储

1
git stash drop stash@{$num}

6.删除所有缓存的 stash

1
git stash clear