2016-05-17 12 views
1

Ich bin ein kompletter Anfänger Git. Ich habe SVN für immer benutzt, aber das neue Projekt, an dem ich arbeite, ist in Git gespeichert.Git für einen einzelnen Zweig einrichten

Nun möchte ich an einem einzigen Zweig (nennen wir es 'mybranch') dieses Repositorys arbeiten (sagen wir mal www.example.com/project.git). Ich habe folgendes getan:

git init 

git clone -b mybranch --single-branch www.example.com/project.git 

Aber wenn ich den folgenden Code, lädt es die gesamte Branche:

git pull www.example.com/project.git mybranch 

, die für immer dauert, weil es bereits eine Menge drin. Soweit ich weiß, sollte es nur aktualisieren (fetch & merge) was ich habe. Wie der svn-Befehl "update".

Ich habe seit Tagen Tutorials und How-To's geblättert und ich habe keine Ahnung, was zum Teufel ist los.

Vielen Dank im Voraus!

- Bearbeiten - ich folgende Infos:

$ git branch -avv 

kehrt nichts, so wie git remote -v und git branch -a

$ git config --local -l 

kehrt:

core.repositoryformatversion=0 
core.filemode=false 
core.bare=false 
core.logallrefupdates=true 
core.symlinks=false 
core.ignorecase=true 
core.hidedotfiles=dotGitOnly 
+0

Können Sie eine Ausgabe von 'git remote -v' und' git branch -a' anzeigen? –

+0

@StasMakarov Thorses zurück nichts, siehe bearbeiten in Frage. – Saftkeks

Antwort

1

Nach einem git clone -b mybranch --single-branch , sollten Sie zwei Dinge haben:

  1. Ihr lokaler ausgecheckt Zweig wird an den Remote-Upstream-Zweig

    git br -avv 
    * mybranch     c228c1a [origin/mybranch] 
    
  2. verknüpft

    Ihr Repo sollte nur diesen Zweig holen

    git config --local -l 
    [email protected]:qoa/jardepsg.git 
    remote.origin.fetch=+refs/heads/pkgjarcls:refs/remotes/origin/pkgjarcls 
    branch.pkgjarcls.remote=origin 
    branch.pkgjarcls.merge=refs/heads/pkgjarcls 
    

In diesem Fall sollten Sie brauche nur

git pull 

Das würde nur Ihre Branche holen und zusammenführen.

+0

Danke für Ihre Zeit. 'git br -avv' gibt nichts zurück, 'git config' usw. gibt mir etwas, das einfach falsch aussieht. Ich habe die obige Frage bearbeitet. – Saftkeks

+0

@Saftkeks Einfach dein Repo erneut klonen und nochmal deine Konfiguration überprüfen. – VonC

+0

'fatal: Zielpfad 'Projektname' existiert bereits und ist kein leeres Verzeichnis.' Ich habe den Ordner vorher gelöscht und wieder geklont, das funktioniert auch nicht. Muss ich das Projekt als Remote hinzufügen? – Saftkeks

0

Nicht und es ist unnormal zu git init vor git clone, die eine verschachtelte Git Repo machen würde. git init verwandelt den aktuellen Ordner in einen Git Repo, und git clone macht einen anderen Git Repo innerhalb des aktuellen Ordners.

+0

Uhm Ich kann sehen, was du sagst, ich habe jetzt zwei .git-Ordner. Aber würde das mein Problem lösen? – Saftkeks