Git:忘记上游回购

时间:2013-09-03 18:43:45

标签: git bitbucket

我正在与私人回购的小团队合作。起初我认为我们应该遵循fork和merge工作流程,所以我创建了一个“项目官方”存储库并将其分成我自己的“项目”仓库。没有其他人使用官方回购,我已经意识到这个项目的分叉和合并并不是最佳选择。在删除“项目官方”之前,如何从“项目官方”回购中删除“项目”回购?现在这是多余的。

我不想分叉和合并的原因是因为wiki不是作为Bitbucket项目的一部分而分叉的,因为我们只需要一个中心问题跟踪器。我更愿意制作“任务”分支,并在完成后合并它们。

更新

要清理.git / config文件,我会删除[remote "upstream"],对吧?我保持叉子,而不是原始的回购。除了我之外,没有人触及任何一个回购。

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"] ### This has the URL of the repo I am keeping.
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git@bitbucket.org:d4goxn/project.git
[branch "master"]
    remote = origin
    merge = refs/heads/master
[remote "upstream"] ### This has the URL of the repo that I have deleted.
    url = git@bitbucket.org:d4goxn/project-official.git
    fetch = +refs/heads/*:refs/remotes/upstream/*

2 个答案:

答案 0 :(得分:2)

repo的分叉,在BitBucket中创建一个克隆。您唯一想要确定的是“项目”中您想要的“项目官方”回购没有变化。除此之外,只需删除“项目官方”回购就是您应该做的所有事情。

答案 1 :(得分:1)

如果我理解你的问题,你应该这样做:

$ git push origin:master

或者你可以:

vi /.git 并删除标题为“[remote”origin]的部分。“此部分将继续下一个括号内的标签。

它将包含几行类似于:

url = ssh://server/dir/git_repo.git fetch =
+refs/heads/*:refs/remotes/origin/*