git使用大全

git

1.工作区、暂存区、分支的具体含义

工作区就是git init之后的目录。

从工作区add指令后就会进入stage区

stage区执行commit指令就会进入master区

2.git版本回退和撤销修改

版本日志

查看日志 git log
简化一次提交为一行版本的查看日志 git log --pretty=oneline
另一种查看日志的方式(可以看到commit_id) git reflog
带有分支信息的日志查看方式 git log --graph --pretty=oneline --abbrev-commit

版本回退

回退到上一个版本 git reset --hard HEAD~
回退到上上一个版本 git reset --hard HEAD~~
回退到上10个版本 git reset --hard HEAD~10
回退到指定版本号 git reset --hard 

撤销修改

撤销工作区的修改 git checkout --file
注:如果暂存区有内容,撤销成和暂存区一致,否则和分支保持一致
撤销stage区 git reset HEAD 

分支

创建

创建分支 git branch 
切换分支 git checkout 
创建分支并切换到该分支 git checkout -b 
删除分支 git branch -d 
强制删除 git branch -D 

合并

Fast Forward mode[合并后没有记录]  git merge branchname
递归策略式合并[合并后有记录] git merge --no-ff -m "merge lisa branch 2 master branch"        

冲突

正常处理conflict,修改后,add,再commit
快速修改冲突 git checkout ours file [接受本地的]
git checkout theirs file [接受服务器的]

储存

储存 git stash    
查看储存的列表 git stash list
恢复方法 1.git stash apply 不会删除储存的东西
        2.git stash pop 删除储存的东西
恢复固定的储存 git stash apply stash@{0}       

多人协作

首先,可以试图用git push origin branch-name推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

如果合并有冲突,则解决冲突,并在本地提交;

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,
则说明本地分支和远程分支的链接关系没有创建,
用命令 git branch --set-upstream  origin/

标签 tag (目的是为了更好回退,其实tag也是指向某一次commit提交的)

创建标签 git tag 
查看tag git tag
针对某一次commit提交创建tag git tag v1.0 
查看tag具体是commit信息 git show 
创建标签的时候添加一个message  git tag -a v0.1 -m "version 0.1 released" 

删除标签 git tag -d v1.0
推送tag到远程分支 git push origin 
一次性全部推送本地tag到远程分支 git push origin --tags
删除远程tag git push origin :refs/tags/

别名

将st替换status  git config --global alias.st status

好用的配置 git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

你可能感兴趣的:(git使用大全)