2014-01-22 88 views
0

我没有找到一个明确的答案,这一个(很多东西都铺天盖地地在新手GIT):如何将github与本地存储库进行同步?

我有一个本地回购和在github上远程文件组成的:A,B和C

  • 今天早上我改变了本地文件A.
  • 中午,远程B被改变了。
  • 后来,我决定在本地文件C C.一些代码在远程

我的画描绘了文件和它们的变化而变化的一些意见:

local  remote 
A -------> A 
B <------- B 
C <------> C  

晚上,我只是盯着回购。有没有机会及时完成?任何人?

+0

@jessh如果这里需要注意的一些事情:做'pull'后立即我们应该做'git reset A',否则** remote ** A会覆盖最新的本地A **!然后添加并提交(**但**,如果你的本地C是最新的,那么它将会丢失!)我的项目https://github.com/centurianii/g3measure – centurian

+0

@МалъСкрылевъ试图理解'藏匿... ... ! – centurian

回答

2

首先提交所有本地更改。确保您的工作目录是干净的:

$ git status 

应该返回:nothing to commit, working directory clean

然后,拉遥控器上的变化:

$ git pull remote-name branch-name 
# it's probably git pull origin master 

然后把你的修改与远程共享​​:

$ git push origin master 
1

我的本地workfolw允许您解开拉和推阶段公关operly,它是:

  1. 存储与git stash本地提交的更改:

    git stash 
    
  2. 更新你的本地仓库使用一个遥控器版本:

    git pull 
    

    所以,你得到:

    local  remote 
    B <------- B 
    C <------- C 
    
  3. 应用局部变化,以及合并所有inconsistiences,修复文件,如果任何要求,并把它们添加到索引,并承诺合并:

    git stash pop 
    vim ... 
    git add . 
    git commit 
    
  4. 编辑文件C,并提交。

    vim C 
    git add C 
    git commit 
    
  5. 推变为删除回购:

    git push 
    

    所以你会得到:

    local  remote 
    A -------> B 
    C -------> C 
    
相关问题