Articles of 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 但是这不起作用 – 大家仍然可以推。 我想只允许特定的用户推动掌握和阻止他人。

Linux命令删除.git文件夹以外的所有文件?

在将新文件复制到分支之前,我想删除除 .git/文件夹之外的所有当前目录的内容 。 什么是Linux的命令呢?

GIT:不能推(奇怪的configuration问题)

我正在重新安装Linux Mint。 尝试从任何存储库中推送时出现以下错误: error: Malformed value for push.default: simple error: Must be one of nothing, matching, tracking or current. fatal: bad config file line 8 in /home/leng/.gitconfig fatal: Could not read from remote repository. 这很奇怪,因为我肯定有一个支持简单推送行为的版本。 git –version的输出是git version 1.8.3.2 。 ~/.gitconfig的内容: [user] name = My Name email = MyEmail@website.com [color] ui = true [push] default […]

直接从GitLab私有存储库打开一个文件

我有一个GitLab服务器上的私人存储库,并使用SSH我可以使用git克隆拉项目。 但是我想直接从服务器(更具体地说,一个Drupal / Drush .make文件)在Linux命令行上运行一个脚本, 我试图使用原始文件运行它: drush make http://server.com/user/project/raw/master/file.make (为了方便非Drupal用户,让我们假设) curl http://server.com/user/project/raw/master/file.make 没有成功。 当然,它返回我的login页面。 可能吗?

在git和svn下同时pipe理源代码 – 这是否合理?

这可能是不寻常的,所以让我来设置一下场景: 我们有一个包含我们项目历史的SVN回购 – 一个基于Linux的embedded式系统。 SVN回购包含Linux内核,U-Boot,busybox等来源以及我们所有的内部应用程序,文件系统等。 我们拥有的Linux内核已经老了,我正在努力移植到正在为我们的平台积极开发的主线上。 我正在做git下的内核工作,并用“The Community”交易补丁。 我可以使事情工作,并采取内核源代码的快照,并将其转储到SVN,但我想保持更新的能力,拥有本地分支机构,并与Gitpipe理补丁。 我可以保留两个内核副本,每个内核由一个SCMpipe理,但是这会有点混乱。 使用gitpipe理的内核源代码也有开发和testing的风险,并忘记将这些更改放入SVN中,导致SVN版本在非内核源不同步的情况下出现故障。 将整个项目迁移到git不是一个选项。 使用git来pipe理内核源代码,并在SVN中join一堆胶水脚本和存储的散列值是可能的,但是对于整个项目来说,从SVN获得统一的历史/差异function会更好。 我正在考虑的是在同一个目录下同时pipe理SVN和git下的内核源代码。 作为一个内核开发者,我主要使用git,当事情看起来不错的时候,做一个SVN提交内部使用。 对于其他内部用户,他们将能够通过一个SVN签出来获得完整的,一致的资源,查看统一的历史logging,并且可以在SVN下对内核资源进行更改。 后来我或另一个使用git的人可以SVN更新这些变化,并提交他们适当的GIT。 一些让git去忽略.svn文件,反之亦然。 另外,我不太清楚如何将一个普通的SVN结帐,并告诉git开始pipe理内核子树,但我确信git有一些模糊的瑞士军刀选项来做到这一点。 所以这是我的想法。 这意味着大多数同事不必担心git,我们可以稍后默默地忽略git和fork。 这里的问题确实是,有没有人做过这样的事情,它是如何工作的,或者你提出了什么替代解决scheme?