Linux 使用存储库查看器的服务器上的独立git二进制文件

Linux 使用存储库查看器的服务器上的独立git二进制文件,linux,git,64-bit,self-hosting,Linux,Git,64 Bit,Self Hosting,我公司有一台服务器。 此服务器上未安装git(在不久的将来也不会安装)。 (在许多免费服务器托管站点上,也没有安装git) 有没有一种方法可以在不安装git的情况下使用git二进制文件 (因此在另一个文件夹中没有所需的依赖项,独立) 我没有选择另一台服务器 我想要git作为web git存储库查看器,这当然需要git二进制文件在任何文件夹中工作,也许有一个集成了git二进制文件的web git存储库查看器 我试过: 服务器操作系统是64位linux。 我已将git二进制文件从本地linux复制

我公司有一台服务器。 此服务器上未安装git(在不久的将来也不会安装)。 (在许多免费服务器托管站点上,也没有安装git)

有没有一种方法可以在不安装git的情况下使用git二进制文件 (因此在另一个文件夹中没有所需的依赖项,独立)

我没有选择另一台服务器

我想要git作为web git存储库查看器,这当然需要git二进制文件在任何文件夹中工作,也许有一个集成了git二进制文件的web git存储库查看器


我试过:

服务器操作系统是64位linux。 我已将git二进制文件从本地linux复制到服务器上的可执行路径。 它不起作用。 所以我查找依赖项。需要这些图书馆:

  • libz.so.1
  • libresolv.so.2
  • libpthread.so.0
  • libpcre.so.3
  • libc.so.6
它们只是指向以下库的链接:

  • libz.so.1.2.7
  • libresolv-2.17.so
  • libpthread-2.17.so
  • libpcre.so.3.13.1
  • libc-2.17.so

所以我重命名了这些库,并将它们复制到git二进制文件所在的服务器上。但不幸的是,git二进制文件看起来在/lib/linux-64-gnu中。。。库的os文件夹,不在同一文件夹中。我不知道下一步该做什么。

这是我的解决方案:

  • 我在我的Windows PC上下载并安装了Ubuntu13,其架构与我要复制独立git二进制文件的服务器相同。体系结构是x86_64,代表64位。下载链接是
  • 我把它刻录到磁盘上,从CD启动。然后我知道用户名是“Ubuntu”,但我需要另一个,所以我把Ubuntu安装在32GB的U盘上
  • 我下载了一个git tarball文件:“git-1.7.3.tar.bz2”并在终端中使用命令“tar-jxvf git-1.7.3.tar.bz2”将其解压缩,然后使用命令“cd~/Downloads”访问目录,下载的tarball git文件位于该目录下。下载链接是code.google.com/p/kakola/downloads/detail?name=git-1.7.3.5.tar.bz2&can=2&q=(通过谷歌搜索“git.tar.bz2”找到)
  • 现在在.tar.bz2文件旁边有一个目录,使用“cd git-1.7.3.5”进入该目录
  • 为了确保我安装了其他网站上提到的所有命令,这些命令对于“sudo apt get install libexpat1 dev ascidoc libz dev gettext curl”可能很有用
  • 我在路径上创建了一个目录,bin应该位于服务器上,因为我只有主访问权限,它必须位于主文件夹中,并带有“mkdir/home/git”
  • 然后我使用命令“/configure--prefix=/home/git/BIN CFLAGS=“${CFLAGS}-static”NO_OPENSSL=1 NO_CURL=1”用我的配置文件“config.mak.autogen”填充提取的文件夹
  • 在那之后,我做了“make”和“makedoc”来创建文件,然后做了“install”和“makeinstalldoc”,我想让git二进制文件填充所有这些文件的目录(棒上有相当大的364MB)
  • 下载Gitlist并将其上载到我的服务器,并将整个创建的文件夹及其所有二进制文件上载到Gitlist文件夹
  • 将config.ini从Gitlist更改为使用git的独立二进制文件,而不是某些路径(还更改了项目路径)
  • Gitlist找到存储库并在列表视图中显示它


    (使用GitWeb时,我遇到了一个错误,但GitList似乎还可以)

    您应该搜索“build static git”,您会发现很多信息。请注意,git不是一个二进制文件。在我这一刻使用的有点过时的Ubuntu Lucid中,我使用了“dpkg query-L git core | xargs file | grep ELF | wc-L”,结果是121。我很确定你可以设置一个全局链接器选项来构建所有静态链接的二进制文件,但我自己没有时间尝试;b) 可以构建为仅依赖于
    libc
    (更“标准”的构建将使其依赖于
    libc
    libz
    libssl
    )。(不,我更喜欢Git,但作为一个自我托管的单二进制DVCS解决方案,Fossil可以轻而易举地赢得所有人的支持。)我从未使用过gitlist。您的构建步骤看起来还可以,但我仍然建议您首先确保您的git二进制文件能够正常工作。遵循git教程,例如命令
    git init
    git add
    git status
    git commit
    git diff
    。如果它们都工作得很好,就开始配置gitlist。