Articles of 混帐

在新安装程序中克隆gitosis-admin错误

我有我的gitosis.conf中的以下内容。 (通过gitsosis-init < id_rsa.pub与我的笔记本电脑上的密钥创build) [gitosis] loglevel = DEBUG [group gitosis-admin] writable = gitosis-admin members = michael@laptop 当我尝试git clone git@SERVER:gitsos-admin.git ,出现以下错误: Initialized empty Git repository in /home/michael/gitsos-admin/.git/ DEBUG:gitosis.serve.main:Got command "git-upload-pack 'gitsos-admin.git'" DEBUG:gitosis.access.haveAccess:Access check for 'michael@laptop' as 'writable' on 'gitsos-admin.git'… DEBUG:gitosis.access.haveAccess:Stripping .git suffix from 'gitsos-admin.git', new value 'gitsos-admin' DEBUG:gitosis.group.getMembership:found 'michael@laptop' in 'gitosis-admin' DEBUG:gitosis.access.haveAccess:Access check for 'michael@laptop' as […]

validationPuppet的问题以“puppet parser validate”

我使用puppet parser validate在git pre-commit hook中puppet parser validate ,以便在将文件提交到我们的Puppetconfiguration存储库之前发现问题。 不幸的是,这个命令似乎是一个非常轻量级的语法检查,只能标记错误,如不平衡的引号和括号。 validate命令似乎没有真正parsingconfiguration,并寻找像无效的属性,未定义的引用,等等。 例如,以下内容不会导致投诉: file { 'somefile': requires => File['some-other-file'] } 在这个例子中, requires应该是require 。 同样,这也不会产生错误: file {'somefile': require => File['file-that-does-not-exist']} 没有file-that-does-not-exist资源定义file-that-does-not-exist 。 有没有什么办法来捕捉这些types的错误,而不实际应用configuration? 我希望puppet apply命令中的某种标志可以完全parsing一个configuration而不做任何修改,但是据我所知,在Puppet 2.7.1中不存在这样的选项。 UPDATE puppet apply –noop似乎太努力在另一个方向。 它将尝试stat()清单中引用的任何文件,如果它尝试stat()当前用户无法访问的文件,通常会导致它失败并出现许可错误。 其他人在做什么?

可能'链'git回购?

假设我有一个本地开发机器,并且将git origin设置为另一台机器'2',是否有可能将machine2的git origin设置为另一台机器? 这可以让我把我的代码从dev发送到machine2,并将machine3作为machine2上的repo的远程备份。 谢谢

尝试创build一个git仓库,每次有人更新原点时自动签出

基本上,我有一个服务器与Git回购“起源”。 每次有人向其中推送代码时,我都想从另一个仓库中自动获取另一个仓库。 我一直在使用钩子来源,特别是后收到。 到目前为止,我的post收到看起来像这样: #!/bin/sh GIT_DIR=/home/<user>/<test_repo> git pull origin master 但是,当我从另一台计算机推出来,我得到的错误: remote: fatal: Not a git repository: '/home/<user>/<test_repo>' 但是,test_repo绝对是一个git回购。 我可以进入它并运行'git pull origin master',它工作正常。 有没有更简单的方法来做我想做的事情? 如果不是的话,我在做什么错误的方法呢? 提前致谢。 编辑,澄清:回购是一个正在进行的网站,我想有一个完整的最新版本。

我可以使git仅从远程存储库提取工作副本吗?

作为系统pipe理员,我希望能够编写一个自动安装过程到生产服务器: 有权访问远程git仓库(比如在git.mycompany.com ) 可以从存储库中获取一个分支/标签的副本(例如release_20110721_01 ) 将不会创build整个存储库的本地副本 换句话说,有一个包含所有修订版本的中央存储库,但是只能在生产服务器上安装特定标签。 有没有办法做到这一点? 至less在CVS中,可以获得具有给定标签的模块的工作副本,而不必拉取整个存储库的副本。

为什么我的git自动提交脚本在cron.hourly不运行?

我正在运行Ubuntu 10.04(64位),并在/etc/cron.hourly中具有以下脚本 cd /home/chris/path/to/directory git add . git commit -m "Commit message" git push origin master 该文件是775,我可以手动运行它运行该脚本,并看到它提交到服务器上的提交。 以下是手动运行的输出: chris@IronHide:~$ /etc/cron.hourly/auto-commit [master 8dc5299] Commit message 4 files changed, 8 insertions(+), 6 deletions(-) rewrite 1h/1m/c.-b.-6.dat (100%) Counting objects: 17, done. Compressing objects: 100% (7/7), done. Writing objects: 100% (9/9), 4.64 KiB, done. Total 9 (delta 3), reused […]

多个HTTP Git Repos设置

什么是http.conf为了自动服务我所有的git仓库? 例如,如果我有一个如下所示的目录结构(在一个名为git的中央目录中的一些项目): /../htdocs/git/project1 /../htdocs/git/project2 /../htdocs/git/project3 我必须写些什么才能避免为每个项目重复相同的操作: <Location /git/project1> DAV on AuthType Basic AuthName "Git" AuthUserFile /../htdocs/git/project1/passwd.git Require valid-user </Location> 奖金问题: 有没有办法让回收站在Apache的htdocs之外的地方,并在那里redirect请求? (如使用DocumentRoot) 笔记: 所有回购都是 – 因为它们是中央回购(Trac使用的)

我应该避免使用git来跟踪具有单独历史logging的单个文件,例如/ var / named?

2012年1月, Randal Schwartz发表了一篇名为“Git Introduction”的演讲,我非常喜欢这个演讲,但是我对他的告诫感到困惑,因为他没有使用git来跟踪不相关或不同的历史logging。 他的幻灯片第4页包含以下几点要点。 。 。 但不是… 跟踪文件权限和所有权 使用单独的历史跟踪单个文件 让事情变得痛苦 。 。 。 这就是他说的,大约4分钟: 它没有针对任何types的关于文件的元数据进行优化。 它不, 它不 ,跟踪文件权限或文件所有权。 这不是它的工作。 它是pipe理源文件,而源代码没有所有者,源代码没有权限。 在食谱中使用来源来构build您要部署的真实事物。 所以git没有这方面的技术。 人们试图在它上面build立结构来做到这一点,并取得了一定程度的成功,但是让我们来看看基本上git是什么意思,而不是人们正在build设什么。 这也不意味着跟踪具有不相关或单独历史logging的单个文件。 例如,你可能会想,“哦,我真的很喜欢这个,我想跟踪我所有的东西,但是等等确实是一堆单独的,不相关的文件,你不会做分支和合并。把这个改变添加到这个改变中,最终同时想退出这两个文件,但这并不是真正的工作方式,所以对单个文件来说是不好的。 我仍然使用RCS来跟踪我/ etc中的单个文件。 这真的很快,很便宜,我可以回到我需要的数据。 这也没有使事情痛苦的优化。 好? 它的devise很容易和东西。 就个人而言,我没有计划跟踪/ etc与git,但我最近开始使用git来跟踪/ var / named(BIND configs)。 鉴于Randal上面要说的,我应该停止使用git来达到这个目的吗? 有没有一个缺点,我不期望的问题,一个困难? 到目前为止,一切正如我所期望的那样工作,而且我没有任何问题,但是由于上面的警告,我实际上犹豫开始使用git来跟踪/ var / named。 我受到Cobbler的scm_track_enabled特性的影响,这个特性说:“在执行添加,编辑或同步事件时,启用哪个版本控制对/ var / lib / cobbler的所有更改的触发器,这可以用来恢复到之前的数据库版本,生成RSS提要,或者用于其他审计或备份目的,git是推荐用于此function的SCM。 我使用/ var / named的git与此非常相似。 (作为一个方面说明,我从来没有使用过RCS […]

在“git push origin master”中“master”是什么意思

我是git作为版本控制系统的新手。 我试着阅读文档,但是我不明白“git push origin master”命令中的“master”是什么意思。 有人可以用非常愚蠢的术语来解释吗? 谢谢

Git无法推出错误'内存不足'

我在内存很less的服务器上使用gitosis,特别是在512 MB左右。 当我尝试推送一个大文件夹(恰好是来自Android手机的备份)时,我得到: me@corellia:~/Configs/$ git push origin master Counting objects: 18, done. Delta compression using up to 8 threads. Compressing objects: 100% (14/14), done. fatal: Out of memory, malloc failed MiB | 685 KiB/s error: pack-objects died of signal 13 error: failed to push some refs to 'git@dagobah:Configs' 我一直在寻找networking,尤其是: http://www.mail-archive.com/[email protected]/msg01747.html以及http://git.661346.n2.nabble。 com / out-of-memory-error-git-push-td5443705.html但是这些似乎没有帮助我有两个原因:1)当我推送时,我并不是真的内存不足。 当我在推送过程中运行“顶部”时,我得到: 24262 […]