git简单操做

初始化目录为git仓库linux

git init

 克隆github远程仓库文件(/user/test是文件路径)git

git clone https://github.com/user/test

git对于文件的操做与linux类似,vim,touch,mv,mkdir等命令都能直接使用。github

 把文件readme.txt提交到缓存区vim

git add readme.txt

把要提交的缓存区的文件提交到仓库,并注释提交信息(能够屡次git add以后一次提交)缓存

git commit -m "I commit one file"

查看当前仓库状态ui

git status

查看文件被修改了什么内容日志

git diff readme.txt

查看项目修改日志code

git log

在git中HEAD表示当前版本,HEAD^表示上一个版本,HEAD^^表示上上个版本,HEAD~n上n个版本rem

git回退到以前的版本(回退到其余版本只须要改HEAD^为想要的版本或版本号)it

git reset --hard HEAD^

git reflog记录以前全部的命令

git reflog

丢弃缓存区要提交的文件(与git add相反,至关于取消add操做, 也能够理解为用仓库中的文件代替本地文件)

git checkout -- readme.txt

当文件已修改并已经git add时能够使用下面命令把文件恢复到上一次提交后的状态

git reset HEAD readme.txt

删除仓库中的文件

git rm readme.txt
git commit -m "rm readme.txt"

关联远程仓库

git remote add origin git@仓库地址

把本地仓库内容推送到远程仓库(git push 至关于把当前分支master推送到远程库)

git push -u origin master//不是第一次推送就把-u去掉

克隆远程仓库

git clone git@远程仓库地址加路径

建立本身的分支在须要时合并到master主分支能够使工做更加便捷

建立本身的分支dev(也能够是其余名字)

git checkout -b dev//至关于git branch dev         git checkoui dev

查看当前分支

git branch

切换分支

git checkout master //git checkout+分支名

把dev分支内容合并到master上

git merge dev //先切换到master,再执行该命令

删除分支dev

git branch -d dev

冲突处理

当合并dev到master时,master早已不是以前的版本,此时执行合并分支就会产生冲突,此时用git status命令可查看冲突文件,

git用<<<<<<<,=======,>>>>>>>来标记出不一样分支的内容

这时咱们先把冲突文件提交到master,在进行分支合并,或者只把本身作出的修改提交到主分支,就不用再合并分支了。

查看分支合并图

git log --graph