Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am trying to install git on a SUSE linux server that, to all intents and purposes, doesn't have internet access. It would appear that I also need to install some dependencies for git.

Is there a straightforward way of creating a package that contains git along with all its dependencies on another machine that I can the copy over to this server to install from?

share|improve this question
add comment

1 Answer

up vote 2 down vote accepted

Just download git.tar.gz unpack-configure-compile

  • Git is reasonably self-sufficient, but does depend on a few external programs and libraries. Git can be used without most of them by adding the approriate "NO_=YesPlease" to the make command line or config.mak file.

    • "zlib", the compression library. Git won't build without it.

    • "ssh" is used to push and pull over the net.

    • A POSIX-compliant shell is required to run many scripts needed for everyday use (e.g. "bisect", "pull").

    • "Perl" version 5.8 or later is needed to use some of the features (e.g. preparing a partial commit using "git add -i/-p", interacting with svn repositories with "git svn"). If you can live without these, use NO_PERL.

    • "openssl" library is used by git-imap-send to use IMAP over SSL. If you don't need it, use NO_OPENSSL.

      By default, git uses OpenSSL for SHA1 but it will use it's own library (inspired by Mozilla's) with either NO_OPENSSL or BLK_SHA1. Also included is a version optimized for PowerPC (PPC_SHA1).

    • "libcurl" library is used by git-http-fetch and git-fetch. You might also want the "curl" executable for debugging purposes. If you do not use http:// or https:// repositories, you do not have to have them (use NO_CURL).

    • "expat" library; git-http-push uses it for remote lock management over DAV. Similar to "curl" above, this is optional (with NO_EXPAT).

    • "wish", the Tcl/Tk windowing shell is used in gitk to show the history graphically, and in git-gui. If you don't want gitk or git-gui, you can use NO_TCLTK.

share|improve this answer
Thanks for such a thorough break down on the different options. Tis much appreciated –  Adam Phillips May 24 '11 at 12:12
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.