2009-10-16 53 views
0

我是新来的基本上遵循从这里http://genaud.net/2008/08/clearcase-globally-git-locally/的方向来尝试和镜像清晰的快照。git push在远程阶段创建'撤消'?

我创建快照目录git仓库。

然后我创建一个存储库创建我的工作库的克隆。

UPDATE: 这里就是我所做的

cd d:/views/contribsnap #(this is the snapshot from clearcase) 
git init 
git add . 
git commit 
#at this point I have a repository stuffed with my clearcase snapshot 
#then 
git clone -o contribsnap . /d/views/csclone 
# now I have my working repo 
cd /d/views/csclone 
edit testfile.txt 
git add testfile.txt 
git commit -m "made some changes" 
#from git gui hit 'push' button which puts my changes into the contribsnap repo 
#BUT it also stages a new file in contribsnap which if I commit it, it undoes the changes I pushed. 

结束时更新

现在的问题是我不知道从我的工作库回到原点的“推”会发生什么。

当我打的混帐GUI中的“推”按钮,从我的工作库,它似乎把正确的东西放在原点库,但随后阶段,该阶段提交时会撤销推送的文件。第一次尝试它时,我感到非常困惑,因为我从工作回购仓库中推出了,然后对原点和HEAD^1的提交似乎有变化,但最新没有。

我猜你不应该犯的是,和它放在那里,这样起源的维护者可容易地撤销推?

什么是工作流程,如果我双方的维护者。我是否应该将工作回购“拉回”原产地?或者我暂时取消撤消文件,然后...?我不知道该如何处理“撤消”文件。

谢谢。 吉姆

回答

1

我有点困惑,你在做什么,但这个建议可能会帮助:一般来说,这是对工作从库主存储库分离是个好主意。因此,创建一个单独的(说)gitrepos目录,然后每个本地副本应该从那里推入和拉出。不要直接在该主副本中编辑文件。这可以帮助保持简单和干净,并且意味着您不会意外损坏您的主副本。

您还可以在您的gitrepos目录中使用git init --bare,并且所有文件将在那里存在,而不是在.git目录中。