转载请注明出处,创做不易:https://github.com/ZhengMaster2020/blogs/
关于Git是什么东西想必你们应该知道它是个什么东西,因此在这里我就不过多地去唠叨那么多。如有不知请移步Git官网,在这里我只想分享一下我本身平时用到的几个经常使用的Git命令。git
$ git init : 表示咱们在当前的目录下新建了一个Git代码库(它会在当前目录下生成一个.git的文件夹里面的文件是咱们远程仓库的文件)github
$ git init [file-name] : 表示咱们在当前的目录下新建了一个Git代码库(它会在当前目录下生成一个名为file-name的文件夹,名字能够本身随意起,它会在file-name文件夹下生成一个.git文件夹)bash
$ git clone url :例如在打开gitbash 输入 git clone git@github.com:ZhengMaster2020/blogs.git 它就会下载连接下的项目到咱们的当前目录下,其中url连接既能够是http协议的连接也能够是ssh协议的连接ssh
$ git add . : 注意add后面是英文的 . 表示吧当前目录下的所有文件添加到暂存区(若有不懂这个这个是什么东西的情看git官方文档)编辑器
$git add [file-name1] [file-name2] ... : 中括号表示可选的意思, 咱们能够添加指定的文件名的文件,添加多少依次就写多少个文件名,那要添加的文件要添加到哪里呢,没错又是这个暂存区,啊哈;fetch
$git add [dir-name] : 添加指定的文件目录到暂存区,里面的子文件目录也会被添加到暂存区中url
$ git rm [file-name1] [file-name2] : 表示的是删除指定的文件,这里删除的文件是工做区(不懂的话,仍是补文档)中的文件blog
$ git rm --cache [file-name] : 表示的是中止跟踪指定的文件,那么该文件之后若是变更的话可能没法及时更新rem
$git mv [文件当前名字] [文件更改后的名字] :表示的是更改文件名文档
$git commit -m [message]: 将暂存区(也就是至关本地的一个临时空间,咱们用add添加的文件通常先放到这里使用commit以后再将文件存储在本地仓库里)了的文件提交的本地的仓库中,完成数据的持久性;
$git commit [file1] [file2]... -m : 将暂存去区指定的的文件提交到仓库区,以便push之需,上传到远程的仓库中(-m 中的m表是message就是每次提交相比以前作了什么改动,是版本升级吗仍是功能完善了吗等等)
$git comm -a : 表示提交工做区距离上一次commit以后所作的变化,直接提交到仓库中去,就不须要先提交到暂存区在提交到仓库中去
$ git commit -v : 提交时显示全部diff的信息(这里它会打开vi编辑器来显示信息,须要掌握Linux的文本编辑器的相关知识-命令模式-插入模式-底行命令模式)
$ git branch -a :列出全部分支,不论是本地的仍是远程的分支
$ git branch -r:列出全部远程的分支,这里的-r ,表的是remote的r,表示远程意思
$ git branch:列出全部的本地分支
$ git branch [branch-name]:新建一个名为branch-name的分支,可是仍是在当前的分支上却没有切换到新建的分支上
$ git merge [branch]:这个命令应该是使用较为频繁的一条,merge意思是合并的意思,因此啊,它表示的是把指定的分支合并到当前的分支上去
$ git branch -d [branch-name]:很少BB,这里就是删除个B ranch,删除指定名为branch-name的本地分支
$ git push origin --delete [branch-name]: 哇,这一条好长喔,成条粉肠甘长,其实呢就是删除远程的名为branch-name的分支
$ git status: status意思就是状态的意思,因此它便表示显示状态信息,显示什么信息捏,就是有关变动文件的状态信息嘛
$ git log:显示当前分支的版本历史
$ git log --stat: 显示每次commit所发生变动的文件,和commit历史记录
$ git diff:显示暂存区和工做区的差别,挺有用的一条命令
$ git diff --cache [file] :现实暂存区和上一个commit的差别
$ git diff HEAD:现实工做去与当前分支最新commit之间的差别
$ git diff --shortstat "@{0 day ago}": 这个有点吊了,就是显示今天你本身写多少行代码,固然是在基于git文件下来统计的,都说一天一万行的代码量对应着每个月一万元的工资,不知是真的捏仍是假的捏
$ git fetch [remote]:表示的是获取(fetch就是获取的意思)远程仓库的全部变更,并下载到本地目录上,这其中的remote 就是咱们远程仓库名, 每一个人起的名字都不同,根据本身所填的远程仓库名的去填
$ git remote -v:显示全部远程仓库
$ git remote show [remote]:显示某个远程仓库的信息
$ git remote add [shortname] [url]:新增一个新得远程仓库名为shortname,url为远程仓库地址,具体要添加到哪里
$ git pull [remote] [branch] :pull为拉的意思, 表示取回远程仓库的变化,而且和本地的分支合并,(它与fetch有何区别呢?请你们自行思考)
$ git push [remote] [branch]:push意推的意思上传本地仓库指定分支到远程仓库, 其中remote为远程仓库名称, branch为本地分支名称
$ git push [remote] --force:force意思是迫使,强迫,表示强推本地分支到远程仓库,及时和远程仓库有冲突等状况
$ git push [remote] --all : 一次性推送全部本地分支到远程仓库,有多少推多少
$ git checkout [file]:恢复暂存区的指定文件到工做区
$ git checkout . :恢复暂存区的全部文件到工做区
$ git reset --hard:重置暂存区与工做区,并于上一次commit的变化保持一致
$ git stash:暂时将为提交的的变化移除
好了本次的分享心得就到这里,关于git的使用命令仍是有不少滴,这些命令涉及到不少方面和功能,在平常生活如若须要用到其余的命令咱们能够自行再去网上搜索一下,没必要把全部的命令都弄得很熟悉,熟悉经常使用的就行。还有其余经常使用的命令我在更新。