首页  >  问答  >  正文

Git管理时,在没编辑完整不想提交版本,又要换电脑。怎么办?

用git archive只能导出已提交的版本。未提交的不行。。
提交后导出再退回上一版本么?
应该怎么做好一些?

曾经蜡笔没有小新曾经蜡笔没有小新2706 天前907

全部回复(6)我来回复

  • 漂亮男人

    漂亮男人2017-05-24 11:37:49

    第一步:拉一个临时的分支

    git checkout -b abc

    第二步:提交在临时分支

    git commit -m '临时分支'
    git push

    第三步:换电脑,checkout临时分支

    git clone http://XXXXX.git
    git checkout abc

    第四步:可以删除abc分支

    回复
    0
  • 黄舟

    黄舟2017-05-24 11:37:49

    git又不是svn。git可以多分支开发呀,为什么不能提交。正常的项目管理至少有一个主分支,一个发布分支,各开发人员有自己的独立分支,提交后,由专员审核后合并到主分支上。

    回复
    0
  • 仅有的幸福

    仅有的幸福2017-05-24 11:37:49

    切一个分支出来存储你的修改,你可以把修改的部分提交到这个分支上面,换电脑拉下来继续开发即可,开发完再提交到你们自己的版本库。使用完毕删掉你那个临时分支就好了

    回复
    0
  • 大家讲道理

    大家讲道理2017-05-24 11:37:49

    1 硬盘装新电脑上
    2 新旧电脑可以同时使用片刻的话,先本地commit,在旧电脑上开server或者就使用网络共享共享你的代码库,在新电脑克隆你旧电脑上的库就好了。
    3 新建临时分支push到公共服务器上,新电脑上clone后删掉公共服务器上的这个临时分支。

    回复
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-24 11:37:49

    建议使用楼上的方法,git本来就是分布式开发,建立一个分支的代价很廉价,自己可以随意建立分支。

    回复
    0
  • PHP中文网

    PHP中文网2017-05-24 11:37:49

    给lz一个我的方法吧,这个解决方法主要不是针对于换电脑,而是针对不想提交不完美的commit。
    lz无非是想commit的内容全面一些。amend可以完美解决。该命令用以修改commit信息

    git commit --amend

    常规用法:

    //edit code
    git commit -m "temp commit"
    //edit code
    git commit --amend //修改commit信息
    git push

    这样在本地,可以随时提交,后面每次提交都是修改之前的提交,最后满意后,push到远程。
    对于lz的情况,还有一点需要注意,在第一台电脑push,第二台电脑pull&&--amend后,本地的commit与远程的commit已经产生了不同。此时需要删除远程分支,重新push,有两种方法

    //第二台电脑修改code后
    //删除远程分支并push(需要有权限)
    git push -f
    //如果没有权限,先删除远程分支,再push
    git push origin :[branch-name]
    git push

    回复
    0
  • 取消回复