我终于通过放弃SVN for Git并喜欢它而迈出了一大步.它必须在某个地方,但我无法真正找到如何做到这一点,gitosis友好.
我将我的回购'网站'存储在远程计算机上.我推送我的工作副本并在生产机器上提取这些数据.一个市长的区别是'one'文件:database.yml,它永远不会在生产机器上改变.
是否有可能(如果是这样,如何),当从repo中提取数据时,只能"忽略"这个文件?我现在手动这样做,但是一些优雅将是最受欢迎的.
谢谢.
Git显然非常棒,各种客户端都可用,并且易于安装.
然而,为团队启动并运行Git服务器是一个挑战.
我有点惊讶的是,还没有一个易于部署的Java-Git应用服务器或webapp.看起来Gitosis,Gitolite等是在其他堆栈上运行的一些选项,但如果您已经在运行Java堆栈,那么部署Java servlet或webapp最简单.
沿着这些方向,我想知道如何编写Java'Git Server'webapp?
JGit可以在多长时间内为您提供简单的实现?将JGit打包为Web应用程序以便能够推送/拉出它以及轻松创建新的回购站需要做些什么?
我有工作的gitosis repo.如果我做
git clone git@server:repo.git
Run Code Online (Sandbox Code Playgroud)
它正确地克隆了回购.但是,如果我这样做,它就不起作用:
git clone ssh://git@server:repo.git
Cloning into repo...
ssh: connect to host port 22: Connection refused
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
问题是,当我使用pipII时:
pip install git+ssh://git@server:repo.git
Run Code Online (Sandbox Code Playgroud)
当然还有:
Cloning into repo...
ssh: connect to host port 22: Connection refused
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
如果我想这样做:
pip install git+git@server:repo.git
Run Code Online (Sandbox Code Playgroud)
我明白了
ValueError: ('Expected version spec in', 'git+git@server:repo.git', 'at', '+git@server:repo.git')
Run Code Online (Sandbox Code Playgroud)
有没有办法配置pip或gitosis所以我可以让它工作?
谢谢,
(请避免'使用gitolite',如果可以,我会的话)
我和一个大型开发团队一起使用git,我希望每个开发人员都能拥有一组别名.它们经常变化,所以我想以某种方式将它们存储在原点.有没有办法在git中设置它?我正在为git服务器使用gitosis(不确定这是否会产生影响).
我按照这里的说明设置了一个gitosis服务器.它适用于初始用户,但我最近添加了一个新用户.这是我采取的步骤.
ssh-keygen文件名johndoe 创建了一个rsa密钥对.git commit -a -m "what i did"之后我试着用新密钥文件签出.它要求密码短语,当我正确输入密码时,它会询问用户git的密码!用户git没有密码.
现在我已经在sshd_config中关闭了PasswordAuthentication,现在它说'Permission denied(publickey).我检查了git用户的authorized_keys文件,其中只有一个密钥被授权,即gitosis admin的初始密钥.
我还仔细检查了./gitosis-admin.git/hooks/post-update挂钩的权限,它有755
对版本控制很重要的一件事是知道谁做了什么改变.如果事情发生了变化,我不知道为什么要做出改变,我会查看历史并询问做出改变的人.当我正在探索git时,让我对这个功能有点紧张的一件事是它看起来很容易伪造.什么阻止我将同事姓名/电子邮件放在user.name和user.email的git global config中?当使用像gitosis/gitolite(定义用户)或github(我假设使用像gitosis/gitolite这样的东西)之类的东西时,有什么可以看到谁真正做出了提交吗?
我在Ubuntu服务器上安装了Git和Gitosis,它有3个域名停放.我怎么知道,Git使用哪些域名来构建Git访问URL,例如:git@xxxxxxxx/repository.git我在哪里可以设置这个xxxxxxx值?提前谢谢你,Git看起来很棒.
我正试图在服务器上设置gitosis.我只是想知道一件事,我的ssh密钥最后有我的gmail地址,因为我最初使用它为github.对于我正在设置的服务器上的这个新项目,我想在提交git时使用我的电子邮件地址.在gitosis中设置它时,我可以使用相同的ssh密钥,还是需要在我的帐户上使用不同的ssh密钥me@newserver?
我发现你的文章使用Apache Auth和gitweg gitweb.
我想知道如果我没有使用LDAP进行身份验证,是否有办法做到这一点.我们目前有一个非常大的NIS域,我们用它来在所有unix服务器上进行身份验证.我们通过UI将其用于SVN存储库,但对于这种情况,我试图满足以下要求:
我首先想到的是我需要让Gitweb和Gitolite一起玩,每个人现在都可以单独工作.
如果gitolite使用SSH密钥提供访问权限,那么它可以通过为用户/开发人员访问Gitweb/gitolite的每台机器提供密钥来提供访问权限.
或者,如果我可以让gitweb简单地从NIS域验证用户,因为每个用户都有一个我们的IT部门设置的帐户,这样会更好.
我可以使用任何想法或howtos来进一步了解这个要求?
我安装了一个新的gitosis实例,也有一个旧的.
如何将回购从旧服务器移动到新服务器?克隆在新服务器上?
我需要在开发人员计算机上进行哪些更改才能切换远程分支?或者他们需要再次克隆?