1
FrankFang128 2015-05-18 06:38:29 +08:00 via Android
不知道,只会用命令行。。。
|
2
networm 2015-05-18 07:59:43 +08:00 via iPad
用完这个功能后本地的提交与修改都没了,不过提交可以找回,通过 git reflog。
建议阅读 Pro Git 第二版,了解 Git 的原理与使用方法。 针对你遇到的问题,正确的做法是: git add . git stash git pull 解决出现的冲突 git push git stash pop 无法拉取可能是本地修改了一个远程提交也修改的文件,拉取时直接报错,禁止拉取了。对应的解决方案就是先 git stash 存起来,过会儿在 git pull 后 git stash pop 让 git 自动合并,最后可能有冲突,自行解决。 也有可能是拉取后产生冲突了,直接解决冲突即可。 |
3
holulu 2015-05-18 08:04:00 +08:00
有提交的话,一般都不会丢吧。而且最好是一个人用一个分支来工作,之后合到主分支上,这样可以避免混乱,又可以保住自己的工作成果
|
4
blank4me 2015-05-18 08:50:03 +08:00
你可以把当前有问题、无法拉取的版本开个新分支存放
``` git checkout -b my_work ``` 然后回到master,并重置到没问题的commit ``` git checkout master git reset --hard 没问题的commit ``` 这样你的当前工作在my_work分支上,不会丢失,然后你也可以在master上pull远程改动,本地看看到底哪些文件冲突了 |
5
blank4me 2015-05-18 09:00:46 +08:00
不过要是你不是想问这个就无视吧... 才知道v2ex不能删除..
|
6
qinkun1234 2015-05-18 09:09:29 +08:00
|
7
crystaldust 2015-05-18 09:49:24 +08:00
最好到命令行用git的命令看一下。SourceTree这类工具软件有些设计不太符合git的规范,另外也封装了一些功能,一上来就用工具可能会导致对git理解不透彻。(我们一个新同事用了3个月的SourceTree,前几天才知道git在本地有3层local,stage,repository,因为他用SourceTree每次都是直接commit,根本没有add这个步骤)
|
8
zhouzm 2015-05-18 11:16:35 +08:00
用工作流啊,每次你自己的开发开启一个工作流分支,这样别人 push 的代码就不会和你的提交直接冲突。
等你的功能开发(并提交)完毕后,将你的工作流分支合并到公共分支上,这时候可以定定心心的处理冲突,冲突解决完后再提交并推送。 |