Frage Ermitteln des Namens des ursprünglichen Repositorys, aus dem Sie in Git geklont haben


Wenn Sie Ihren ersten Klon mit der Syntax machen

git clone username@server:gitRepo.git

Ist es möglich, das lokale Repository zu verwenden, um den Namen dieses ersten Klons zu finden? (so im obigen Beispiel finde gitRepo.git)


75
2017-11-02 09:12


Ursprung


Antworten:


Im Repository-Stammverzeichnis enthält die .git / config-Datei alle Informationen zu Remote-Repositorys und -Abzweigen. In Ihrem Beispiel sollten Sie nach etwas suchen wie:

[remote "origin"]  
    fetch = +refs/heads/*:refs/remotes/origin/*  
    url = server:gitRepo.git  

Auch, git Befehl: git remote -v Zeigt den Namen und die URL des Remote-Repositorys an. Das Remote-Repository "Ursprung" entspricht normalerweise dem Original-Repository, aus dem die lokale Kopie geklont wurde.


71
2017-11-02 09:25



git config --get remote.origin.url

49
2018-06-24 02:16



Dies ist ein schneller Bash-Befehl, nach dem Sie wahrscheinlich suchen
druckt nur einen Basisnamen des Remote-Repositorys

Wo gehst du hin? von:
basename $(git remote show -n origin | grep Fetch | cut -d: -f2-)

alternativ wo du drückst zu:
basename $(git remote show -n origin | grep Push | cut -d: -f2-)

insbesondere -n Option macht den Befehl viel schneller


26
2018-02-27 17:12



Ich benutze das:

basename $(git remote get-url origin) .git

was etwas zurückgibt gitRepo. (Entferne das .git am Ende des Befehls, etwas neu zu tun gitRepo.git.)

(Hinweis: Benötigt git> = 2.7.0)


2
2017-09-05 16:48



git remote show origin -n | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'

getestet mit 3 URL Stil:

echo "Fetch URL: http://user@pass:gitservice.org:20080/owner/repo.git" | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'
echo "Fetch URL: Fetch URL: git@github.com:home1-oss/oss-build.git" | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'
echo "Fetch URL: https://github.com/owner/repo.git" | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'

0
2018-06-21 08:37