Articles of git

如何限制提交文件大小?

我完全意识到这个问题 ,这在技术上使这个问题重复,但答案只是提供一个解决scheme,这对我的要求来说已经太晚了。 提交时是否有限制文件大小的选项? 例如:文件大小在500K以上会产生警告。 文件大小超过10M将停止提交。

Gitolite访问修复

我已经在我的linux服务器上设置gitolite,并将我的笔记本电脑添加到gitolite-admin存储库。 我被迫格式化我的笔记本电脑(坏的硬盘),所以我需要找出一种方法来重新获得我的其他存储库gitolite控件的访问。 值得一提的是,我的Linux服务器上有root权限,如果有帮助的话。 我不是很熟悉SSH /公钥等,所以如果有人可以帮忙,我将不胜感激。

在拉不同的分支时做“git pull”请求确认

当同时和很多项目和分支机构合作的时候,我偶尔会犯一些愚蠢的错误,比如拉错分支。 例如,在分支master我没有git pull origin dangerous_code ,并没有注意到相当一段时间。 这个小小的错误导致了很多混乱。 有没有办法让git请求确认,当我试图拉除当前检出的分支以外的分支? 基本上我希望它要求确认,如果分支名称不匹配(检出和被拉)。

如何在Linuxterminal钥匙串上存储你的github https密码?

现在,随着新的双因素authentication,这一点变得更加重要,因为每次在terminal上需要密码时,都必须创build一个新的令牌。 基本上,我正在寻找与OS X中可用的osxkeychain等价的,我可以在Linux桌面和服务器上使用它: git config –global credential.helper osxkeychain 我search了可能的解决scheme,但到目前为止我不喜欢其中的任何一个: SSH而不是https – 不推荐和GitHub上不容易访问的链接 cache –timeout=3600 – 它将最终到期,重新input密码是一个拖动与新的2FA gnome-keyring – 在无头服务器上不起作用(至less不是太优雅 – ssh密码钥匙圈更好) 在我的硬盘驱动器方法encryption的.netrc文件 – 穷人的手动钥匙圈实施? 来吧,有一些适当的基于terminal的钥匙链,可以挂钩到git的凭证。帮助!

如何build立与静态链接的git?

我从https://github.com/git/git下载了git源文件作为zip文件。 我把它解压到/ home / Desktop / denis / git(使用Ubuntu)。 现在这里的教程说,我应该跑 ./configure –prefix=/home/denis/git-static CFLAGS="${CFLAGS} -static" 从上面提到的文件夹作为构buildgit的一个步骤。 但git源似乎没有一个configuration文件在它的根文件夹,我可以运行(只configure.ac,我怀疑是不是我正在寻找)。 我在这里错过了什么? 如何手动build立git? 我这样做是因为我试图让git在共享主机服务器上工作,我无法安装git。

致命:/home/trx/.gitconfig中的configuration文件行1错误

我知道这个问题已经被问了一百万次了,但是我的〜/ .gitconfig只包含两行,那就是在教程中字符正确的。 git config –global user.name "trx" git config –global user.email chazx@live.com 这里可能是什么问题?

git post-receive checkout远程机器?

如果将以下脚本作为hooks/post-receive挂钩添加到裸仓库foo.git : #!/bin/sh GIT_WORK_TREE=/bar git checkout -f 那么无论何时有人推送到存储库,当前状态将在目录bar更新。 这需要bar和foo.git在同一台机器上。 什么是最简单的方法来修改它,以便在远程机器(如baz:/bar )上签出? 一种方法是: #!/bin/sh GIT_WORK_TREE=/tmp/bar git checkout -f rsync … /tmp/bar baz:/bar 有没有更好的办法? 也许不需要中间临时目录? (如果没有什么正确的选项传递给rsync,使得生成的目录是直接签出的?

使用GIT克隆从Windows机器到Linuxnetworking服务器(内部)

好的,我正在寻找一种方法来使用GIT来保持我的本地机器(git存储库)和我的网站(存储库的git克隆)之间的最新的网站。 我已经初始化存储库(在Windows 7计算机上),并将所有文件添加到我的本地计算机上的回购。 我现在需要得到回购webswerver(基于Linux的机器)。 我可以通过putty和ssh访问web服务器。 如何将repo克隆到相应的目录中以便为网站提供服务? 我已经从我的基于Linux的机器上尝试了以下内容:git clone git + ssh://myuser@10.1.0.135/d/webserver/htdocs/repo 我不断收到一个连接到主机10.1.0.35端口22:连接超时 两台计算机都位于不同IP范围(防火墙外)的networking服务器之外。 我来自颠覆,可以很容易svn提交/更新到Web服务器和我的机器没有问题。 感谢您的任何指导!

从php脚本运行git pull

我正在尝试使用Git,GitHub和SSH的完美工作stream,除了运行git pull命令之外,我已经设置了一切。 当我运行exec('git pull')我得到: 无法创build目录“/.ssh”。 主机密钥validation失败。 致命的:远端意外挂断 如果我在terminal(作为根)运行它,它工作得很好,但我需要这个钩子从邮政接收url(Github)工作。 如果我做exec('whoami')我得到apache 。 这是CentOS中的一个(dv)。

如何阻止推送到远程主分支

有什么办法阻止代码直接推送给主? 我试图在.git/hooks/update添加一个脚本: #!/bin/sh if [ $USER != "git-repo-admin" ]; then if [ "$1" == refs/heads/master ]; then echo "Manual pushing to this repo is restricted" exit 1 fi fi 但是这不起作用 – 大家仍然可以推。 我想只允许特定的用户推动掌握和阻止他人。