git支持很多种工作流程,我们采用的一般是这样,远程创建一个主分支,本地每人创建功能分支,日常工作流程如下:
去自己的工作分支

$ git checkout work
工作

....
提交工作分支的修改

$ git commit -a
回到主分支

$ git checkout master
获取远程最新的修改,此时不会产生冲突

$ git pull
回到工作分支

$ git checkout work
用rebase合并主干的修改,如果有冲突在此时解决

$ git rebase master
回到主分支

$ git checkout master
合并工作分支的修改,此时不会产生冲突。

$ git merge work
提交到远程主干

$ git push

这样做的好处是,远程主干上的历史永远是线性的。每个人在本地分支解决冲突,不会在主干上产生冲突。
<a>github的提交方式 
     (1)git add .--------------------存储到本地 
         git commit -m 'message'-------存储时的标记(修改了哪些地方,方便下次查询) 
         git pull------------------------下载服务器代码 
         git push------------------------上传代码至服务器 
  <b>svn服务器的提交方式 
   (1)git add .  ------------------存储到本地 
        git commit -m 'message'--------存储时的标记(修改了哪些地方,方便下次查询) 
        git svn rebase------------------下载服务器代码 
        git svn dcommit-----------------上传代码至服务器 
   <c>其他相关的git命令 
(1)git branch-------------------查看当前属于哪个分支 
    1、只有冲突存在时才会修改分支——改为冲突再git add . 
    2、git rebase –-continue-------------------自动合并 
    3、git checkout –b svn 新建分支名----------新建分支存储现有文件 
    4、git branch-------------------------------查看在哪个分支下 
    5、git checkout master----------------------将其放到master分支下 
    6、git merge-------------------------------整合分支 
    7、git branch -d 分支名----------------------删除分支 
(2)git checkout + 上传的commit编号-----------将本地代码恢复到此状态 
(3)git log------------------------------------查看本地git上传日志 
(4)git log -p app/controllers/grids_controller.rb----查看某个文件的修改历史 
(5)git checkout d0eb6ef3afe8a377943d3cf6f1e9c320c18f6f32 
     app/controllers/charts_controller.rb-----------返回到这个版本的文件(重现错误) 
(6)git diff + commit编号--------------------------查询不同代码


Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐