1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

git server installation

Dieses Thema im Forum "FreeBSD - Anwendungen und Ports" wurde erstellt von Mardor, 15 Juni 2017.

  1. Mardor

    Mardor Member

    Registriert seit:
    29 November 2007
    Beiträge:
    491
    Hallo,

    ich habe in einem Jail folgende installation vorgenommen:

    portmaster devel/git
    Code:
    rehash
    
    pw groupadd -n git -g 1001
    pw useradd -n git -u 1001 -g git -c git -d /git -s /usr/local/libexec/git-core/git-shell -h -
    
    mkdir /git
    chown git:git /git/
    chmod 755 /git
    mkdir /git/base/
    chown git:git /git/base/
    chmod 775 /git/base/
    
    mkdir /git/base/test.git
    cd /git/base/test.git && git init --bare --shared
    
    passwd git
    Hier wähle ich für meinen Test ein Passwort, da ich aktuell noch keine ssh Keys verwenden möchte.

    Danach habe ich in der rc.conf folgende Einträge gesetzt

    Code:
    git_daemon_enable="YES"
    git_daemon_directory="/git"
    git_daemon_flags="--syslog --base-path=/git --export-all"
    sshd_enable="YES"
    
    Danach den ssh Schlüssel generiert
    Code:
    /usr/bin/ssh-keygen -A
    Auf dem Ubuntu Client habe ich folgendes durchgeführt

    Code:
    mkdir ~/test
    cd ~/test && git init
    echo 'test' > test
    git add .
    git remote add origin ssh://git@FQDN:5600/base/test.git
    git commit -m 'First Commit'
    
    Leider erhalte ich die folgende Meldung:

    Code:
    fatal:/base/test.git' does not appear to be a git repository
    fatal: Konnte nicht von Remote-Repository lesen.
    
    Wenn ich aber über su -m git -c /bin/sh versuche in die Verzeichnisse zu wechseln funktioniert das wunderbar.

    Code:
    su -m git -c '/bin/sh'
    $ ls
    ls: .: Permission denied
    $ cd /git/
    $ ls
    base
    $ cd base/
    $ ls
    test.git
    $ cd test.git/
    $ ls
    HEAD  branches  config  description hooks  info  objects  refs
    Hat jemand eine Idee woran dies liegen kann ?

    Gruß Mardor
     
  2. gadean

    gadean Member

    Registriert seit:
    26 Oktober 2013
    Beiträge:
    171
    Probier mal: git remote add origin ssh://git@FQDN:5600/git/base/test.git
     
    Mardor gefällt das.
  3. Mardor

    Mardor Member

    Registriert seit:
    29 November 2007
    Beiträge:
    491
    Hallo gadean,

    das hat funktioniert, jedoch weis ich absolut nicht wieso ich den Filesystempfad eingeben muss.
    Das würde jeder Anleitung wiedersprechen:

    https://forums.freebsd.org/threads/10810/

    Hab ich irgendetwas zuvor falsch gemacht ?

    Gruß Mardor
     
  4. gadean

    gadean Member

    Registriert seit:
    26 Oktober 2013
    Beiträge:
    171
    Wegen dem forward slash: relative vs. absolute Pfade
    In dem Beispiel geben die "...FQDN: base/test.git" an, du hast daraus aber "...FQDN: / base/test.git" gemacht (wahrscheinlich wegen der Portangabe)
    Du könntest auch "...FQDN:5600 /~/ base/test.git" benutzten.
     
    Mardor und crotchmaster gefällt das.
  5. crotchmaster

    crotchmaster happy BSD user

    Registriert seit:
    17 Juli 2003
    Beiträge:
    1.100
    Ort:
    vor'm Computer, wo sonst!
    Ich würde sagen nicht. In meinem privaten git Repo ist es genauso, also inklusive vollem Pfad zum home Verzeichnis des git users.
    In diesem Fall akzeptiere ich es auch so, ohne mich zu fragen, warum?