git命令大全

1. Git基本版本控制命令

1.1. git config

git config --global user.name  "美少女"     //配置用户姓名(之间都有空格,注意,以下同上)

git config --global user.email "[email protected]"   //配置用户邮箱

git config --list  //查看用户信息

git help //查看git的所有指令

git help +想要查询的指令   //就会弹出详细的解释

git init   //创建一个仓库(会创建一个.git的文件夹,但是是隐藏的)

1.2. git add 提交代码到缓存区

git add + 文件名  //添加文件到仓库

git add .   //所有文件和文件夹全部添加到仓库

git rm --cached (文件名) //从仓库中删除

1.3. git status 查看文件状态

git status 查看当前项目修改的文件,红色表示没上传

如果修改了文件,查询状态会显示新版本没有上传,然后git add . 上传,上传之后git commit -m

1.4. git commit 提交暂存区代码

确认文件保存,在什么时间修改的文件

git commit  -m "this is our frist commit"    //添加时间节点信息
git commit -am "this is new"  二合一    //add和commit二合一,add是存入暂存区,commit是提交

1.5. git push 和 git pull 在仓库推送和拉取代码

git pull   //拉取当前分支下最后的代码
git push //提交刚刚所以commit过的所有代码至仓库 , 可能会出现冲突,修改和保存冲突即可
git push origin 分支名   //推送到指定分支下

1.6. git log 日志相关操作

git diff  //查看修改前后的区别,git add之后就看不了了

git rm 文件名   //删掉文件,还是要commit提交

git mv 当前文件名   //要重命名文件名 也可以移动文件

在其他地方重命名了文件,在git里面要先add新文件,然后删除旧文件

git checkout -- index.html  //回到最后一次提交的样子,文件恢复,(如果add之后就恢复不了了)

git reset HEAD  文件名  //回到没有add之前的样子

git reset --hard HEAD^   // 版本回退,一个^回退一个版本

git reset --hard *f4214b22  //编号是commit的id,表示退回到之前的某一个版本*

git reflog //查询版本对应的id

git checkout *f4214b22  --index.html  //*恢复id对应版本的某一个文件

1.7 git stash暂存区未提交代码暂缓

实际工作中经常会遇到,有些代码是不提交的,只更新部分代码,但是在上传的过程中会报错,就需要我们先把未add的代码存起来,在push之后再释放继续修改。

git stash   //  暂存工作区修改的内容

git stash pop  // 和 git stash 相反,git stash pop 是恢复暂存的工作区内容

git stash apply stash@{2}  //恢复指定编号的stash内容

git stash list   //查询工作区所有stash的列表

git stash clear   // 清空所有的stash的内容

2. Git 分支是什么?

可以理解为两个分支是两个移动硬盘,在当前的分支下面创建或者删除文件等,add和commit之后,就可以看到另外一个分支并没有改变。协同操作时,不同的开发者可以使用不同的分支,分开时内容是一样的,改变之后,各自不同,或者是用来记录不同的版本,或者开发新功能。

git branch //查询本地仓库的所有分支

git branch -a //查询本地和远程的所有分支,其中远程的展示为红色 

git checkout +分支名  //切换到本地该分支名的分支下

git branch +分支名  //自定义分支

git checkout -b 分支名     //复合写法 添加并切换到新的lesson分支下

git checkout -b origin/分支名  //复合写法,新建一个本地的【分支名】的分支,并且关联到远程的该名称分支

git branch -d lesson //复合写法 删除某一个分支,(必须不在这个分支下)

所有新建的分支都是拷贝的master的分支

命令工具其实已经有很多了,但是在很多时候总是会有 “意外” 的情况出现,熟练技巧就不会在急用的时候手忙脚乱了,希望你任何时候都临危不乱,信手拈来~

你可能感兴趣的:(git命令大全)