Merge remote-tracking branch ‘origin/master’
出现这个问题 是 我之前 git commit 了好几次 在提前了 远程仓库 master分支
我建议还是用命令行的 方式来解决比较好 :
git checkout -f
Your branch is ahead of 'origin/master' by 5 commits.
(use "git push" to publish your local commits)
git push origin master
Delta compression using up to 4 threads.
Compressing objects: 100% (203/203), done.
Writing objects: 100% (226/226), 54.90 KiB | 0 bytes/s, done.
Total 226 (delta 131), reused 0 (delta 0)
To http://git.hipaygo.me/sight_wen/YuMei_Android.git
ab8d553..8e7c7aa master -> master
git 命令总结
$ git reset –hard HEAD^
Head^^ Head^^^ Head~100
当前版本 回退到上一个版本 上上个版本
git reset –hard 369885 只需要写前几位
指定未来版本 回到
git reflog
来记录你的每一次命令
git diff HEAD – readme.txt
查看工作区和版本库里面最新版本的区别
git checkout – file
丢弃工作区的修改
git rm file
删除 工作区的文件
$ git checkout – test.txt
误删的文件恢复到最新版本:
$ git remote add origin git@github.com:michaelliao/learngit.git
本地仓库的内容推送到GitHub仓库。
$ git push -u origin master
第一次空的仓库 推送上去
$ git push origin master
本地作了提交,就可以通过命令:
$ git clone git@github.com:michaelliao/gitskills.git
命令git clone克隆一个本地库:
$ git -b dev
创建 并切换到分支
相当于
git branch dev
查看当前分支:
当前分支前面会标一个*号。
git checkout dev
合并之前 流程
git commit
git checkout master
git merge dev
$ git merge dev
Updating d17efd8..fec145a
Fast-forward
readme.txt | 1 +
1 file changed, 1 insertion(+)
合并成功了
合并完成之后 就可以删除 dev分支
git branch -d dev
准备合并dev分支,请注意–no-ff参数,表示禁用Fast forward:
$ git merge –no-ff -m “merge with no-ff” dev
Merge made by the ‘recursive’ strategy.
Git 冲突解决
it is a distributed version control system.
Git is free software distributed under the GPL.
Git has a mutable index called stage.
Git tracks changes of files.
<<<<<<< HEAD
Creating a new branch is quick & simple.
=======
Creating a new branch is quick AND simple.
>>>>>>> feature1
当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
用git log –graph命令可以看到分支合并图。
$ git stash
Git还提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作:
git stash apply
恢复后,stash内容并不删除 git stash drop来删除;
git stash pop
stash内容删除
修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。
git branch -D
强制删除 某个分支
git tag
打标签