2010-04-15 8 views
8

Bei der Arbeit hat die Entwicklung keine Versionskontrolle. Damit meine ich, dass wir nur in das P4-Depot einchecken dürfen, wenn der Änderungssatz für Regressionstests bereit ist. Intercolary-Änderungen können nicht berücksichtigt werden! Es gibt eine Vielzahl von Problemen, wenn ich während der Entwicklung keine Versionskontrolle habe, auf die ich hier nicht eingehen muss. Stattdessen brachte ich das Problem zu prodsys und sie sagten: "Nein, aber was du in deinem Home-Verzeichnis machst, ist dein Geschäft". Grundsätzlich kann ich es selbst installieren, wenn ich es möchte.Installieren von Git im Home-Verzeichnis - CentOS 5 - KEINE ROOT

Leider kann ich es nicht selbst installieren, weil ich auf CentOS 5 bei der Arbeit bin und ich keine Wurzel habe. Yum gibt Ihnen nicht die Uhrzeit, wenn Sie keine Wurzel haben. Also was kann ich tun, um git zu bekommen? Ich bin mit statisch verknüpften Binärdateien in Ordnung, wenn es das einfach macht, aber ich kann so etwas nirgends finden. Ich suche auch nach git-p4.

Edit: Ich habe den Tarball heruntergeladen, aber ich denke, ich vermisse Deps. Ich habe das INSTALL-Dokument gelesen und habe alle optionalen Abhängigkeiten deaktiviert:

make prefix=$HOME/git NO_TCLTK=YesPlease NO_OPENSSL=YesPlease NO_CURL=YesPlease NO_EXPAT=YesPlease 

Aber ich kann immer noch nicht bauen.

ich diesen Fehler:

: command not foundline 2: 
: command not foundline 5: 
: command not foundline 8: 
./GIT-VERSION-GEN: line 14: syntax error near unexpected token `elif' 
'/GIT-VERSION-GEN: line 14: `elif test -d .git -o -f .git && 

und es baut eine Menge .o ist, bis ich zu bekommen:

... 
LINK git-daemon 
make: *** No rule to make target `GIT-VERSION-FILE', needed by `git-am'. Stop.` 

Und ich bin wieder stecken.

+0

Vielleicht sollte dies in Super User sein? – Makis

+0

Sehr merkwürdig - Ich hatte keine Probleme, auf CentOS 5 aufzubauen. Diese Fehler treten auf, wenn es versucht, 'GIT-VERSION-GEN' auszuführen, welches ein Shell-Skript im obersten Verzeichnis ist. Ohne das schafft es GIT-VERSION-FILE nicht und kann nicht weitermachen. Die Fehler, die es Ihnen gibt, sind auf den ersten drei leeren Zeilen ... Ich kann nicht sehen, warum das irgendwelche Probleme verursachen konnte. Schau dir die Datei an - gibt es da zufällig neue Zeilenschaltungen? Das würde es tun ... aber es gibt definitiv keine CRLFs im Tarball. – Cascabel

+0

Das war es! Ich extrahierte es mit einem Windows XP-Tool und das hat mir das angetan.Ich lief zu einem weiteren Haken, weil ich local :: lib installiert habe. Ich musste PERL_MM_OPT in der Befehlszeile aufheben und dann baute es. – masonk

Antwort

2

Chris Kaminski bereits mit der Git-Site verknüpft (obwohl die wahre URL ist http://git-scm.com/). Dort gibt es einen Download-Link für einen Tarball. Sie können auch die git.git Repo-Klon:

git clone git://git.kernel.org/pub/scm/git/git.git 

git clone http://www.kernel.org/pub/scm/git/git.git # if behind a firewall 

So oder so, alles, was Sie tun müssen, ist make install - der Standard-Präfix $ HOME ist, Dateien in $ HOME/sind, $ HOME/libexec platzieren, und so weiter. Wenn Sie die Partitionierung beibehalten möchten (eine gute Idee, da es keine Deinstallationsregel gibt), verwenden Sie einfach die Präfix-Option, z. make prefix=$HOME/git.

1

www.git-scm.org

Oder Sie könnten die RPMs selbst, herunterladen und extrahieren etwa so:

rpm2cpio git-1.7.0.5.i386.rpm |cpio -iv 

und kopieren Sie sie in ~ username/bin/git und führen Sie es von dort.

+0

Würde das tatsächlich funktionieren? Git baut den Pfad zu all seinen Befehlen auf ('libexec/git-core/git- *'), so dass Sie keine Installation erstellen können, die für die Platzierung in '/ usr/local' vorgesehen ist und sie ohne weitere Einstellungen an einem anderen Ort platziert GIT_EXEC_PATH, ich glaube nicht ... – Cascabel

+0

Ah, ich glaube, ich habe mich schlecht erinnert. Aus dem Makefile: "gitexecdir, template_dir, mandir, infodir, htmldir, ETC_GITCONFIG kann als relativer Pfad angegeben werden ... und 'git' zur Laufzeit ermittelt, wo sie auf dem Pfad zur ausführbaren Datei basieren" - und den Standardwerten sind in der Tat relative Pfade. Diese Funktion wurde in Git v1.6.2 hinzugefügt, das ist viel neuer als CentOS 5 native Version, aber solange Sie eine neue rpm bekommen, sollten Sie in Ordnung sein. – Cascabel

+0

Ich weiß nicht, was das tut, aber ich habe es wortwörtlich versucht und es hat nicht funktioniert. cpio: ./usr/libexec/git-core/git: Keine solche Datei oder Verzeichnis cpio: ./usr/libexec/git-core/git-remote-http: Keine solche Datei oder Verzeichnis cpio: ./usr/libexec/git-core/git-remote-ftps: Keine solche Datei oder Verzeichnis cpio: ./usr/libexec/git-core/git-remote-ftp: Keine solche Datei oder Verzeichnis etc – masonk

-1

Dies ist wahrscheinlich eine offensichtliche Frage, aber ... "Kannst du nicht einfach deinen Systemadministrator bitten, git zu installieren"?

Oft wird der Sysadmin glücklicher sein, als Sie es mit make zu installieren, denn zumindest dann wird er auf anstehende Sicherheits-Errata usw. aufmerksam sein (besonders für etwas wie Git, das über das Netzwerk spricht) .

Verwandte Themen