Articles of git

用git自动签署所有提交

使用git 1.7.9,可以使用-S选项签名提交。 是否有可能通过git config –global设置默认值? 所以,而不是git commit -S -m 'Commit message' ,这将只是git commit -m 'Commit message' 。

是否有可能使用一个共享的git仓库的etckeeper?

我注意到有几个人推荐使用etckeeper将版本控制应用到我的/ etc目录。 在我看来,默认的安装将存储库放在与您试图pipe理的/ etc相同的机器上。 这对于版本控制来说工作正常,但是不会给服务器备份文件带来额外的好处 – 或者允许我将/ etc的部分从一个源机器复制到另一个源机器。 是否有可能在中央pipe理员机器上共享一个git存储库 ,以便每台服务器上的etckeeper将其数据存储在同一个地方? (我现在用svn和一些自定义脚本来做类似的事情来提交和还原文件,但是我必须记得在做出更改时提交它们。)

托pipe多个版本库(svn,hg,git)

我最近收购了一个专用的服务器,并且需要从一个源代码pipe理托pipe服务中移动一些存储库到它。 没有太多的服务器pipe理经验,但我不知道如何有效地组织它。 我所追求的 – svn.host.com,hg.host.com,git.host.com子域名,将通过SSH密钥根据不同的回购协议 轻松创build新的存储库 使用服务器unix用户列表进行身份validation,但具有基于每个项目的权限,对于某些回购也可select只读公共访问 不幸的是,我在Google上尝试的任何search字词都会将我引导至商业托pipe解决scheme,而不是指导我如何推出自己的解决scheme。 我需要一个简单的托pipe解决scheme,但不需要用户能够创build自己的回购站。 任何关于从哪里开始研究的build议,教程或脚本解决scheme? 一个开放源代码解决scheme的pipe理界面处理(或至less对于一些将是完美的…

Gitlab不能使用SSH密钥

我有问题与Gitlab。 我使用以下指南来安装和configurationGitlab https://github.com/gitlabhq/gitlab-recipes/blob/master/install/centos/README.md 。 安装似乎进展顺利,所有。 networking应用程序似乎工作正常。 但是我无法克隆,拉,推,基本上我不能使用Gitlab。 我在HTTP上看到了403个错误,并且在尝试通过SSH进行克隆时拒绝了这个权限。 我已经确保我的私钥在Windows和OS X上都能正确设置。我可以在服务器上看到公钥。 我在〜/ .ssh.config中的configuration文件中添加了以下内容 Host {hostname} User git Hostname {hostname} PreferredAuthentications publickey IdentityFile C:/Users/{username}/.ssh/id_rsa 这是我在/ var / log / secure中看到的 Jan 14 17:31:48 dev_version_control sshd[3696]: Connection closed by 192.168.17.113 Jan 14 17:32:18 dev_version_control sshd[3700]: Connection closed by 192.168.17.113 当我尝试使用git或ssh时, /var/log/message没有作用 我不确定该从哪里出发。 有什么build议么? 我不知道你的意思是SSH使用git用户名。 我使用的指南没有为git用户创build密码,并声明用户不能用于login。

如何在debian上停止git-daemon

我正在运行debian lenny服务器,我已经安装了git。 现在有一个git守护进程(和适当的打开的端口),但没有/etc/init.d/git脚本,我可以停止。 我知道有/ etc / sv / git-daemon / run,但是这并不能帮我阻止它。

为什么Debian Lenny git包不安装git?

如果我在Debian Lenny上运行以下命令: apt-get install git …我无法使用Git: # git –version bash: git: command not found

git与HTTP和gitolite和nginx

我试图设置一个服务器,我的git repo可以通过HTTP(S)访问。 我使用gitolite和nginx(和web界面的gitlab,但我怀疑它有任何区别)。 我搜查了整个下午,我觉得我卡住了。 我想我已经明白了,nginx需要fcgiwrap才能和gitolite一起工作,所以我尝试了几种configuration,但都没有工作。 我的仓库在/ home / git / repositories。 这是我尝试过的三个nginxconfiguration。 1: location ~ /git(/.*) { gzip off; root /usr/lib/git-core; fastcgi_pass unix:/var/run/fcgiwrap.socket; include /etc/nginx/fcgiwrap.conf; fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; fastcgi_param DOCUMENT_ROOT /usr/lib/git-core/; fastcgi_param SCRIPT_NAME git-http-backend; fastcgi_param GIT_HTTP_EXPORT_ALL ""; fastcgi_param GIT_PROJECT_ROOT /home/git/repositories; fastcgi_param PATH_INFO $1; #fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; } 结果: > git clone http://myservername/projectname.git test/ Cloning into […]

使用msysgit的rsync进行二进制文件

我有三个窗口框,以各种方式连接到我的networking上的一个Linux盒子(一个是本地的networking,一个是笔记本电脑,可能或可能不是本地的,另一个是我的工作桌面)。 我目前正在使用git来同步我的东西之间的大部分东西(使用Linux的盒子作为服务器),它的作品就像一个冠军。 不过,现在我还想添加我的MP3collections(12演出),以便在盒子之间高效同步。 我最初以为我可以用git来做这件事,但是看起来rsync会是一个更好的select,因为我并不需要所有的历史资料。 由于所有我现有的pipe理脚本都是在git bash(而不是cygwin)下运行,所以我希望能够从git bash中使用它(MINGW32就是它在窗口标题栏中所说的)。 我可以在Cygwin中下载并复制它,还是有更好的方法来处理它? Linux机器运行的是最新版本的Ubuntu Server版本 – 我是否需要做任何事情来启用rsync来正确工作呢? 我意识到我可能会以比需要稍微难一些的方式来做这件事,但是我也将其用作改善我的命令行技能的练习。 有什么build议么? 我可以从我的cygwin shell使用rsync,但不能从msysgit使用。 我试图从cygwin的bin文件夹复制rsync.exe到msysgit的bin文件夹,但它仍然没有find它。 有没有其他一些步骤,我需要做的安装在那里? 奇怪的是,我得到一个错误,它找不到该文件,而不是给我一个文件的依赖关系丢失的错误。

可以使用etckeeper来跟踪/ etc之外的configuration文件吗?

具体来说,我想跟踪我的grub.conf ( /boot/grub/grub.conf )和一些oracle文件(即/db/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora )。 我试图使用链接; 然而etckeeper / git只跟踪链接指向的位置,而不是实际的内容。 而且我不能创build硬链接作为文件在另一个卷上。 我知道我可以设置另一个GIT仓库,但我宁愿在etckeeper内部。 更新 基于nealmcb的答案,我想出了以下脚本: #!/bin/sh set -e # Based on nealmcb's idea/script from http://serverfault.com/questions/211425/ # If you want other configuration data or files on the system also # opportunistically tracked via etckeeper, use this script to copy them in. # If there is a hook of […]

如何在ext3 / 4上获得透明,高效的文件系统快照或版本控制?

我一直在考虑版本化文件系统。 这是一个杀手级的function,我已经看过Wayback,ext3cow,zfs,保险丝解决scheme,或只是cvs / svn / git覆盖。 我认为ext3cow模型符合我的要求。 透明,高效,但是我可以不用额外的ls abc@timestampfunction。 只要我以某种方式获得自动化,我的文件的透明版本。 它可以是瞬间的,也可以基于10s,30s,1m,5m,15m等间隔的快照。只要能够有效地处理给定目录中的数千个文件的东西都是各种大小,最小的,但是一些超过100米到1GB。 ZFS是不是真正的select,因为我在Linux上(并且宁愿不使用它通过保险丝,因为我已经有一个我想版本的ext3设置,而不是新的东西)。 那里有什么解决scheme?