我是Git的新手,来自SubVersion。
我有一个主要开发台式计算机,我的Android应用程序存储在eclipse的E-GIT中。我目前正在使用笔记本电脑工作,所以我通过SSH配置了 E-Git 。
现在,我已经在克隆的git(笔记本电脑)中做了大量的工作(比如300次提交),并将返回我的办公室继续在我的主服务器上工作。我有几个问题:
1每次按" Team> Commit"在我的笔记本电脑中,提交上传到我的主桌面git? -it的在线24x7,e-git ssh配置等 -
2我认为1-的答案是否。我是否必须按" Team> Push to UpStream" 才能执行此操作?或者选择哪种方式?
我一直在这里阅读答案Downloading remote / Uploading locale repository and removing any obsolete files建议创建一种简单的中间存储库,但如果这适用于我的情况,请不要理解,因为他们谈论分支和其他的东西,而我没有,只有一个正常的回购与主分支克隆在我的笔记本电脑。
我有点害怕,因为这是我第一次这样做,已经离开了2个月,并且不想冒失去成千上万次变化的风险。
答案 0 :(得分:1)
您可以从主计算机下载提交,而不是从笔记本电脑上传提交内容。
不同地说:只需在主计算机上添加,将笔记本电脑上的repo添加为遥控器。然后,从中拉出来。
我不知道E-git,但我想它与您在笔记本电脑上克隆的内容不同。从命令行看起来就像
git remote add myLaptop ssh me@laptop:/path/to/repo
git pull myLaptop master
编辑以回答评论:
您可以在现有仓库中添加遥控器。因此,您不会创建新的。
为了更好地了解遥控器,您可能需要阅读http://git-scm.com/book/ch2-5.html和http://git-scm.com/book/en/Git-Branching-Remote-Branches
编辑以回答其他评论:
如果您遇到冲突,并且如果您确定不关心主计算机上的文件,则可以从主计算机上运行:
#Discard your un-commited local changes, to avoid git complaining about conflicts
#*Beware* you won't discard changes you're actually interested in!
git reset --hard
#Retrieve the commit from the laptop
git fetch myLaptop
#Checkout the master branch of your laptop
git checkout myLaptop/master
#Move your master on this commit
#*Beware* if your laptop master and main computer master branches diverged, you may lose commits
git checkout -B master