【问题标题】:Looking for implementing a centralized git repository... with a catch正在寻找实现一个集中式 git 存储库......有一个问题
【发布时间】:2011-04-14 04:49:25
【问题描述】:

我想做的事情背后的想法是在 linux 系统上创建一个集中式服务器。我知道如何设置它,并且已经有了。接下来我想在windows系统上设置git,也就是客户端,据我所知,这可以通过msysgit和gitextensions来实现。但问题是我想集成 Windows 客户端以便能够推送和拉取 Visual Studio 文件,但将存储库保留在 linux 服务器上。所以简而言之,我的问题是如何在 linux 上为 git 建立一个集中式服务器,而 Windows 上的客户端能够推送到这个集中式服务器。提前致谢!

我解决了我的问题。我想做的是在服务器(linux)和客户端(windows)之间创建一个 ssh 连接。在这种情况下,我通过 git 源代码控制提供程序(Visual Studio 集成)使用了 Tortoise git。只需按照链接中的步骤进行操作,其他任何可能遇到此问题的人都会被设置!

链接:

乌龟设置:http://theswarmintelligence.blogspot.com/2009/11/windows-tortoisegit-client-for-linux.html

【问题讨论】:

    标签: linux visual-studio-2010 git centralized


    【解决方案1】:

    这里有什么问题?这听起来像是一个完全标准的用例。最好使用 SSH 作为向服务器推送的传输方式。需要注意的几点是:

    • 您应该将集中式存储库创建为裸存储库(即没有工作树的存储库)
    • 如果您有多个用户将推送到该存储库,请在 Linux 机器上为他们创建一个组,并确保该存储库的权限是适当的,例如:

      git init --bare --shared=group newrepository.git
      chgrp -R developers newrepository.git
      

    或者,如果您要拥有多个存储库或需要更复杂的访问控制,您可能需要考虑在服务器上使用 gitolite

    在客户端,GitHub 提供了一个很好的在 Windows 上安装 msysgit(并生成 SSH 密钥)的演练:

    ...还有 gitextensions on its site 的教程。

    【讨论】:

    • 我想我在这里很愚蠢:P 因为真的没有任何问题,我想我只是从 Windows 上带有 git 扩展的服务器中提取,而正如你所说的那样控制服务器上的权限。感谢您的回复!
    猜你喜欢
    • 2020-01-09
    • 2016-07-14
    • 2015-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-30
    • 2020-10-25
    • 2021-10-24
    相关资源
    最近更新 更多