Git常用指令大全

2019-11-06  本文已影响0人  平常心的胖77

Mac关机指令:sudo shutdown -h now

Homebrew方式安装Git

1、/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2、brew install git

用命令行方式查看目录

pwd  ls  ls -ah  cd  cd ..

新建文件夹&文件

mkdir  touch

查看&编辑文件

cat vim  i :wq

删除文件

rm test.txt

配置Git仓库的user name 和 user email

git config --system --list

git config --global  --list

git config --local  --list

git config --global user.name " "

git config --global user.email " "

把某个目录变成Git仓库

git init

添加&提交文件到本地仓库

git add .

git commit -m " "

撤销add

git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了

git reset HEAD XXX/XXX/XXX.java 就是对某个文件进行撤销了

查看当前没有add的内容

git diff

查看当前暂存区的内容(已经add,可以commit的内容)

git status

查看仓库的commit记录

git log

git log --pretty=oneline (精简模式)

版本回退:本地回退&远程回退(https://www.cnblogs.com/qlqwjy/p/8179684.html)

1、本地仓库回滚直接用reset(版本是向后的,--hard当前的修改会丢失,--soft当前的修改不丢失且这些修改是已经add过的状态)

git reset --hard commit_id          //回滚到指定commit_id

2、公共分支回滚用revert,然后commit、push(当前的修改仍然存在,需手动删除,然后push,其他成员pull即可完成,虽然代码回退了,但版本是向前的)

git revert 0ffaacc      //撤销0ffaacc这次commit(注意:0ffaacc是目标版本的前一个版本)

git revert HEAD        //撤销最近一次commit

git revert HEAD~1      //撤销上上次的commit,注意:数字从0开始

Git放弃本地修改(https://www.cnblogs.com/qufanblog/p/7606105.html)

git checkout .

git checkout -- readme.txt

查看远程库信息

git remote -v;

把已有的本地仓库跟远程仓库关联

git remote add origin git@github.com:michaelliao/learngit.git

删除关联的远程仓库

git remote rm origin

普通git的push操作

git push origin master

如果使用了Gerrit的push操作

git push origin HEAD:refs/for/master

从远程仓库克隆(Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议)

git clone git@github.com:michaelliao/gitskills.git

.DS_Store文件冲突解决办法:(https://www.jianshu.com/p/46f22a29b78d)

删除项目中.DS_Store文件,禁止其自动生成,添加到.gitignore

分支创建与合并

查看分支:git branch

查看远程分支:git branch -r

创建分支:git branch <name>

切换分支:git checkout <name>或者git switch <name>

创建+切换分支:git checkout -b <name>或者git switch -c <name>

合并某分支到当前分支:git merge <name>

合并分支:(会生成一个新的commit记录)git merge --no-ff -m "merged bug fix 101" <name>

删除分支:git branch -d <name>

删除一个没有被合并过的分支:git branch -D <name>

将新分支推送到远程仓库:git push origin <name>

删除远程仓库的某个分支:git push origin :<name>

从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;

在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;

建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name

保存工作现场

git stash list

git stash

git stash pop

git stash apply stash@{0} 恢复指定的stash

复制一个特定的commit到当前分支

git cherry-pick 4c805e2

打标签

命令git tag <tagname>用于新建一个标签,默认为HEAD,也可以指定一个commit id;

命令git tag -a <tagname> -m "blablabla..."可以指定标签信息;

命令git tag可以查看所有标签。

命令git push origin <tagname>可以推送一个本地标签到远程仓库;

命令git push origin --tags可以推送全部未推送过的本地标签;

命令git tag -d <tagname>可以删除一个本地标签;

命令git push origin :refs/tags/<tagname>可以删除一个远程标签。

配置别名,简化git命令

git config --global alias.st status

怎么搭建Git服务器

上一篇下一篇

猜你喜欢

热点阅读