2012-03-19 90 views
1

我正在尝试将git引入我的公司。我们是一家SVN商店。除我以外的所有开发人员都在Windows上(我使用的是Mac)关于将git作为公开回购的方法/建议

我以前只通过托管github使用过git,但这不是一种选择,因为功能会偏执于源代码。

无论如何,我在Linux服务器上安装了git(经过很多痛苦之后)。

我的想法是:

- 这混帐的Linux服务器将是我们的“中央”服务器。基本上,通过Jenkins的测试将在这台机器上运行,如果他们通过,升级到SVN回购(公司认为这是“真正的”回购。我有一个git用户,并认为回购将驻留在git用户的家中。目录

- 没有人会去检查任何代码到SVN,该代码会从混帐晋升为SVN的唯一途径是,如果所有的测试都通过了

问题:

  • 做这种做法使感觉如何?
  • 我应该使用什么 协议?看起来我有3个pr协议选择:git,ssh和http
  • 最好我可以告诉,我需要设置git-daemon。我不确定 如何做到这一点,因为我发现每篇文章都很不清楚如何做 这和做什么(断开的链接,不起作用的命令等)
  • 应该每个用户都有自己的帐户在Linux服务器上?

我并不担心搞清楚git-svn,我想要的第一件事就是能够从多个开发机器中拉出/推送。

感谢您的任何想法!

+0

关于源代码的偏执狂?就像那个github会偷你所有的秘密一样? – nickf 2012-03-19 21:42:29

+0

公司只是不舒服在外部来源托管。安全漏洞,github拧紧,并没有适当的备份,等等在一家大公司的典型思维。当然,就在几周前,github出现了一个重大漏洞。 – 2012-03-19 22:42:08

+0

你应该尝试使用gitosis http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way。但这些Windows开发机器这是什么让我最害怕:) – manRo 2012-03-19 23:08:18

回答

0

由于您使用的是继续做这一行,你最好的办法是使用Smart HTTP设置,使您可以利用现有的服务器和SVN和规划知识服务的Git - http://progit.org/2010/03/04/smart-http.html

您将能够有一个git服务器设置与身份验证非常相似,你正在做什么与SVN和事情应该没问题。

这也从用户的角度帮助你。使用http服务的git repo与http服务的SVN repo不同(使用http服务SVN是我见过的最常见的)。

您可能应该避免Git和SVN之间的镜像,因为它会带来更多的复杂性。 git repo可以是你描述的“真正的回购”,你可以从“开发”git回购推到“真正的”回合。 Git是一个DVCS,并将帮助这样的设置。

+0

很高兴知道。从我读的内容开始,我应该在解决HTTP问题之前首先获取git或ssh。 HTTP绝对不是正常的方法(不幸的是)。一旦我得到git://或ssh工作,我会看看http:// – 2012-03-20 15:35:19