【问题标题】:Pushing existing git repository to gitolite将现有的 git 存储库推送到 gitolite
【发布时间】:2011-09-20 01:26:25
【问题描述】:

我在我的 Ubuntu 服务器上设置了 gitolite,可以添加用户、创建空存储库、克隆空存储库、添加文件、本地提交以及 git push origin master 将其发送到 gitolite。

我还可以在 XCode4 中创建一个项目,拥有自己的 git 存储库,并在本地提交更改。

现在我想要另一个 gitolite 副本(可能让其他人可以使用,但也可以作为另一个副本)。这就是我卡住的地方,我是 git 的新手(只真正使用过 XCode git 功能)。有人可以指导我吗?

【问题讨论】:

    标签: git-push gitolite


    【解决方案1】:

    您需要向现有存储库添加另一个远程:

    git remote add newremote git@gitolite.com:gitolite_repo
    

    这些值将根据您的需要进行更改:

    • newremote 是新遥控器的名称(就像您已经使用过的 origin。)
    • git 是用户名
    • gitolite.com 是服务器
    • gitolite_repo 是您要使用的 gitolite 内的 repo

    当你想推到原点时,你可以像往常一样这样做。当您想推送到新的遥控器时,您只需执行以下操作:

    git push newremote branch
    

    【讨论】:

    • 我在第一个命令中使用了存储库名称而不是分支名称
    • 在此之前,必须将 repos 添加到 gitolite 管理配置中并给予适当的访问权限。也许值得一提。
    • git push 命令中添加 --all 选项在某些情况下也可能会有所帮助。
    • 谢谢。它是如此有用和高效。
    • git push --all 在旧的 gitolite 文档中提到,编号为 moving repos
    【解决方案2】:

    使用 User1578 提供的信息,我能够将现有的存储库添加到我的开发服务器的 gitolite 存储库中。

    涉及的步骤:

    • 将 repo 和 pub 密钥(如有必要)添加到 gitolite
    • 编辑了本地 .git/config
      • [remote "origin"] url 更改为我的 gitolite 存储库。
    • git push origin master

    您的设置可能不同,但我不需要(或想要)另一个分支/远程。旧的origin遥控器反正已经死了,所以我不需要保留它。希望这对其他人有帮助。

    【讨论】:

      【解决方案3】:
      1. 创建新的(“bare”是 gitolite 中的默认值)存储库(使用相同的名称或您希望的新名称)
      2. 克隆要导入的存储库
      3. 在克隆的存储库中打开 CLI 并更改远程 url。例如:

        git remote set-url origin yourGitoliteUser@your.gitolite.server:YOUR_NEW_REPO

      4. 运行:

        git 推送

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-09-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-30
        • 2017-12-14
        相关资源
        最近更新 更多