我试图设置一个私有的代码共享git仓库,但是发现那里的大多数实现需要使用SSH公钥,例如: http://www.jedi.be/blog/2009/05/06/8-ways-to-share-your-git-repository/ 看起来合理的唯一方法是git-daemon,但它不包含任何身份validation,虽然它可能是LAN的一个不错的select,但它不适用于远程工作。 来自SVN守护进程,所有访问都通过单个文件方便地控制,SSH密钥对我来说是一个很大的障碍。 有没有办法安全地共享多个Git仓库,而不使用SSHauthentication? 提前致谢!
我需要在GIT存储库中进行版本控制,特定平台的configuration分布在多个服务器上。 考虑到在每个这些服务器中有完全不同的configuration,而应用程序是相同的。 做这个的最好方式是什么? 为每个服务器创build一个分支 repository.git:conf – > [分支服务器1] repository.git:conf – > [branch Server 2] repository.git:conf – > [branch Server N] 注意:这个方法在我看来,很难维护,因为每次服务器configuration的变化,我都需要创build子分支,这就变得混乱了。 为每个服务器创build一个具有不同目录的单个回购 repository.git:conf /服务器1 repository.git:conf /服务器2 repository.git:conf /服务器N 注意:这很容易维护 为每个服务器创build一个回购 repository_1.git:CONF repository_2.git:CONF repository_N.git:CONF 注意:这个方法需要我为每个新服务器创build一个分支。 还有其他方法,这种情况下的最佳做法是什么? 我应该使用我觉得最舒服的那个吗? 韩国社交协会, Gulden PT
有谁知道一个IRC的机器人,我可以钩git仓库,或直接钩入gitolite? 我必须自己写吗? 在这种情况下,中情局不是一种select。
所以我有一个前端nginx服务器,它将代理到其他几个nginx服务器(运行Passenger for Rails应用程序)。 以下是前端nginxconfiguration中的一部分: server { listen 80; server_name git.domain.com; access_log /server/domain/log/nginx.access.log; error_log /server/domain/log/nginx_error.log debug; location / { proxy_pass http://127.0.0.1:8020/; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_max_temp_file_size 0; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; } } server […]
使用git push server我通过SSH推送到一个远程的git-repository。 服务器上的git-repository有一个post-receive hook,它在/var/www/vhosts/domain.com/preview tree)中运行git checkout -f进行部署。 我明白了 错误:git checkout-index:无法创build文件README(权限被拒绝) [等等…] 每当钩子被执行。 这对我来说很有意义,因为ssh用户“bob”没有“预览”目录,所以他没有写权限。 root@www:~# ls -lh /var/www/vhosts/domain.com/ | grep preview drwxr-x— 5 sumo psaserv 4.0K Mar 29 15:38 preview 我应该添加“bob”到“psaserv”组和chmod 775目录(哪个不起作用),还是这是完全错误的方向? 用“sumo”而不是“bob”连接服务器是唯一的select吗? 我读了unix权限,但仍然不能真正找出正确的方法来解决这个问题。 任何指针都表示赞赏!
根据man git-daemon ,这与git包一起,尽pipe我已经在/etc/init.d和/ usr / bin / git *中find了,而且我找不到这是 $ git –version git version 1.7.1 $ whereis git-daemon git-daemon: /usr/share/man/man1/git-daemon.1.gz 这是在Ubuntu 10.10 x86_64上 从这篇文章看来,你可能会创build脚本,虽然不清楚手册页是指什么脚本/命令 这是否现在有一个单独的包?
我们正在把我们的VCS从Subversion转换成Git。 到目前为止,服务器已经安装并正在运行,以便正确完成任务:如果我在本机上创build了一个本地回购站,并且想将其克隆到远程存储库(在本例中是一个中央服务器),那么我必须做一个git –bare init project.git在远程服务器上的git –bare init project.git 。是这样吗? 在这种情况下,是否有可能创build远程回购而不login中央机器?
我一直在关注这个教程 ,在Ubuntu Server 10.04上使用Windows 7作为客户端来安装和设置git。 但是,在终于弄清楚它是如何工作的(在错误的键上执行gitosis-init一堆)之后,我将id_rsa.pub文件复制到/tmp文件夹中的服务器并再次运行。 不幸的是,它仍然不工作,当我执行 git clone [email protected]:gitosis-admin.git 它要求gitosis的密码,而不是RSA密码。 我假设这个人在这里有同样的问题…但是,按照他的指示: 清除git-core和gitosis并手动删除/ srv / gitosis文件夹 并再次按照说明 (这次与正确的id_rsa.pub文件),我仍然有同样的问题。 任何人都知道我在做什么错了? 有没有什么办法来探索可能有助于解决这个问题的更多信息? 编辑:输出从ssh -vvv gitosis@{IP_ADDRESS} (最后几行显示它从publickey切换到密码): {UserName}@{COMPUTERNAME} ~ $ ssh -vvv gitosis@{IP_ADDRESS} OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007 debug2: ssh_connect: needpriv 0 debug1: Connecting to {IP_ADDRESS} [{IP_ADDRESS}] port 22. debug1: Connection established. debug1: identity file /c/Users/{UserName}/.ssh/identity type […]
我有一个Windows Server 2008框(IIS 7)上的一个PHP脚本定期运行,以下载远程XML文件并将其存储在服务器上。 此脚本(以前用于成功运行)现在正在失败,并显示以下错误: Warning: fopen(C:\inetpub\wwwroot\alan\html\xml) [function.fopen]: failed to open stream: Permission denied in C:\inetpub\wwwroot\alan\html\helpers\weather_proxy.php on line 22 如果它很重要,我所做的唯一更改就是将此目录( alan下的所有内容)切换为Git存储库的已检出副本。 我已经尝试或检查了: 目录/文件权限 – 我已经远远地控制了每个人,从c:\ inetpub \ wwwroot \ alan开始,一直到文件本身一直工作,以防权限不被正确地inheritance。 对于它的价值,这也包括脚本本身。 安全模式被禁用。 我错过了什么吗? 我提到Git checkout的原因是,如果我在这个目录中打开一个Git shell,它会报告-rw-r–r–作为我试图写入的文件的有效权限。 chmod这个文件什么也不做,根据bash ls读出,但根据Windows文件属性对话框报告,Everyone拥有完全控制权限。 我错过了什么明显的? 编辑:我应该指出,当在命令行以及通过Web服务器交互运行脚本时都会发生此错误。
我在MediaTemple.net的一台服务器上创build了一个GIT Repository,我使用的是(gs)服务器。 回购是在一个子域(git.example.com)上创build的 然后,我创build了两个用户帐户启用SSH和FTP访问git.example.com 我的问题是,当我们通过SSHlogin,我们最终在/home/00000/users/user%example.com/如果我们尝试导航到域/文件夹,我们没有访问,所以这是一件好事因为我不想让用户访问域/文件夹只是存储库。 现在的问题是如何设置,当我们通过SSHlogin,我们最终在/home/00000/domains/git.example.com/repository? 谢谢!