当两个人同时提交时发生冲突
当提示错误,无法推送一些引用到远程仓库的时候
提示:更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外一个版本库已推送了相同的引用。再次推送前,您可能需要先合并远程变更(如‘git pull’)。详见‘git pull --help’中的‘note about fast-forwards’小节

当git push命令运行的时候
冲突(内容):合并冲突于 日记
自动合并失败,修正冲突然后提交修正的结果
修改掉冲突,再提交

如何回到过去
通过git log查看git日志

commit 1c21b039b8d6ece07e6cc41470faa6623fee8376   //commit号码
Author: houjunpeng0576 <1643394646@qq.com>
Date:   Mon May 15 20:32:04 2017 +0800

git reset --hard 1c21b039b8d6ece07e6cc41470faa6623fee8376 //通过此方式来回到过去

跳到未来
通过git reflog查看最新pull的版本号

006f18f HEAD@{0}: pull: Fast-forward
534a63d HEAD@{1}: commit: 修改了一次文件用来提交
1882909 HEAD@{2}: commit: 第一次上传
0a54349 HEAD@{3}: clone: from https://github.com/houjunpeng0576/Projects.git

git reset --hard 006f18f 调到未来

建立里程碑
·在github的releases中建立里程碑发布程序

分支开发
比如昨天我们发布了一个新的版本,今天有人反馈有个地方有bug,但是这个bug需要马上进行修复,但是我们的master(默认分支)
已经推送了新的功能的代码,于是我们不能在分支上立即进行发布,如果发布可能会把我们未测试的代码发布出去,有可能引发更加严重的问题,这个时候我们就需要创建一个新的分支,已发布的那个版本的代码为基础,在那个基础上进行一个bug的修改,修改完以后,我们再把修改的地方同步到我们正在开发的一个分支上,这样就可以在不考虑现有进度的情况下,能够迅速的把这个bug解决掉。

值得借鉴的多人合作的经验

  1. 多用客户端和工具,少用命令行,除非是在linux服务器上直接开发

  2. 每次提交前,diff自己的代码,以免提交错误的代码

  3. 下班回家前,整理好自己的工作区

  4. 并行的项目,使用分支开发

  5. 在遇到冲突时,搞明白冲突的原因,千万不要所以丢弃别人的代码

  6. 产品发布后,记得打tag,方便将来拉分支修bug,用于修复一些紧急问题


左看右看
3 声望1 粉丝

下一篇 »
laravel