一 从远程仓库Pull代码
从远程仓库Pull代码时候经常会遇到Conflict(冲突)情况,这时候需要一些操作才能正常更新代码
1、git stash 将本地修改的代码全部保存起来
2、git status . 验证是否保存成功,出现如下信息表上表示保存成功
$ git status .
On branch master
Your branch is up-to-date with ‘origin/master’.
nothing to commit, working tree clean
3、git pull 这时候就可以放心pull代码了
在经过第三步更新代码后要把第一步保存的代码重新取出来,所以进行第4步
4、git stash pop (或者 git stash pop stash@{0} 亦可以,这两个命令的区别后面介绍)
这个时候将保存的代码和更新的代码合并,但是扔会出现Conflict,此时你就要进入文件中去查看
文件中在冲突的地方会标识出哪部分是更新下来的,哪部分是自己修改,这里需要手工操作消除
Conflict
5、git stash list 可以查看你保存的代码信息列表
git stash pop 只是从列表里提取最后一次保存的代码,没有把最后一保存信息从list清除
git stash pop stash@{0} 从列表里提取最后一次保存的代码,并把最后一次保存的信息从list中清除,
{}中的0表示最后一次的id
git stash clear 强制性清除list中全部信息
二 提交代码
在提交代码前应该先pull代码,否则会造成冲突
1、git status . 查看有哪些修改的文件
2、git add file_name 添加想要提交的文件(也可以 git add . 表示添加所有修改的文件)
3、git commit -m “commit message 这里写为什么提交,修改了什么Bug之类的”
4、git push 提交到远程仓库
三 切换分支
1、git branch 查看本地分支
2、git branch -a 查看远程分支
3、git checkout branch_name 从当前分支切换到指定分支(branch_name 表示 远程分支名)
四 创建分支
1、git branch branch_name 创建本地分支
2、git push origin branch_name 创建远程分支
五 还原提交
在提交代码时候如果不小心添加了不想提交的代码,可以通过下面的方法修改
不过要根据在不同阶段使用不同命令
1、当只是add了不想提交的文件但还没有commit的时候,这时候比较容易还原
git reset file_name
这个命令就可以让add的文件从add的文件列表里还原到未add的文件列表中
2、当add并commit了不想提交的文件时候 ,这时候可以
2.1、git reset HEAD^ –soft
(也可以 git reset 1835070439d482c14f708bc95a5b6ba7220220f7 –soft 这一串数字是commit的
id,表示你要还原到哪次commit)
将最后一次commit取消了,这次commit的所有文件还原到add状态
2.2、git reset .
将所有add的文件还原到未add状态
3、当想将本地修改的文件内容的修改部分全部不要
git reset HEAD –hard
去掉所有修改的内容,删除新增的文件,让本地的文件完全和远程仓库的一致
4、当想还原修改了单个或多个文件
git checkout file_name_1 file_name_2 file_name_3
git checkout . 还原所有修改的文件,但是新增的文件不会被删除
目前列出的只是工作中最常见的一些命令,还有很多没列出来的以后再补充