git 常用指令汇总

一 创建分支

1.本地分支

  • 创建本地dev分支,然后切换到本地dev分支:
git checkout -b dev
  • git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
git branch dev
git checkout dev
  • 用git branch命令查看当前分支:
git branch
  • 切换分支,如切换回master分支:
git checkout master
  • git merge命令用于合并指定分支到当前分支,把dev分支的工作内容合并到master分支上:
git merge dev
  • 删除dev分支:
git branch -d dev

PS:

  • Fast-forward信息代表:“快进模式”,直接把master指向dev的当前提交,合并速度快。并非每次代码合并都能实现Fast-forward。
  • 创建、合并和删除分支非常快,鼓励使用分支来完成某个短期任务,合并后再删掉,比起直接在master上工作过程更安全。

2.远程分支

  • 删除远程分支:
git push origin --delete remoteBranch
  • 查看远程分支:
git branch -r
  • 查看所有分支,包括本地分支和拉取到的远程分支:
git branch -a

注:remote/origin/[name]表示的是远程分支

  • 拉取远程分支并创建本地分支:
git checkout -b 本地分支名x origin/远程分支名x
  • 基于本地分支创建同分支名的远程仓库:
git checkout -b test
git push origin test

二、clone 代码

  • clone 项目全部代码:git clone 仓库地址
git clone https://github.com/XXX/XXXXX
  • clone 项目指定分支代码:git clone -b clone的分支名 仓库地址
git clone -b dev  https://github.com/XXX/XXXXX

三、操作代码

1.还原修改

清除本地更改

  • 清楚所有更改:
git checkout . && git clean -xdf
  • 清除某一个文件的更改:
git checkout file.name

2.缓存修改

拉取代码前一般都需要临时缓存一下修改的代码:

  • 缓存修改的所有代码:
git stash
  • 恢复缓存堆栈中默认的 stash 代码,并从缓存队列中删除该 stash:
// 命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}
git stash pop
// 或
git stash pop stash@{0}
  • 恢复缓存堆栈中指定的 stash 代码,并从缓存队列中删除该 stash:git stash apply stash@{$num}:
// 应用并删除第二个 stash
git stash pop stash@{1}
  • git stash apply :应用某个 stash,但不会把改 该 stash 从存储列表中删除,默认使用第一个存储,即stash@{0},如果要应用其他 stash,命令 git stash apply stash@{$num} , 如应用第二个 stash:git stash apply stash@{1}
git stash apply
git stash apply stash@{1}
  • git stash list :查看stash了哪些存储;
  • git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1};
  • git stash clear :删除所有缓存的stash

3.保存修改

利用patch 生成修改差异化的文件,可以在想恢复修改的地方恢复,如自己的机器或其他人的机器:

  • git 生成 patch:
git diff > file.patch
  • patch 生成 patch:
patch -p1 < file.patch
  • 应用 patch 的修改:
git apply file.patch

4.提交代码

  • 提交指定文件:
git add a.java b.java
  • 提交全部文件:
git commit -a
  • 提交信息:
git commit -m "提交注释"
  • push到服务器:
git push origin HEAD:refs/for/branch

如果感觉我的文章对您有所帮助,麻烦关注一下或动动小手给个喜欢,谢谢!!!

你可能感兴趣的:(git 常用指令汇总)