Ich kann nicht origin/master
von meinem Server entfernen . Keine Ahnung warum.
Die Fehlermeldung lautet wie folgt
remote: error: By default, deleting the current branch is denied, because the next
remote: error: 'git clone' won't result in any file checked out, causing confusion.
remote: error:
remote: error: You can set 'receive.denyDeleteCurrent' configuration variable to
remote: error: 'warn' or 'ignore' in the remote repository to allow deleting the
remote: error: current branch, with or without a warning message.
remote: error:
remote: error: To squelch this message, you can set it to 'refuse'.
remote: error: refusing to delete the current branch: refs/heads/master
To [email protected]:/export/home/a/elabshare/git/ID-check.git
! [remote rejected] master (deletion of the current branch prohibited)
error: failed to push some refs to '[email protected]:/export/home/a/elabshare/git/ID-check.git'
Nein, ich bin nicht mit Github .
master
, und wir haben es auf einem zeitlichen Zweig gemacht, der jetzt werden solltemaster
. Das einzige Problem ist, dass ich nicht weiß, warum ich den Master auf dem Server nicht töten kann.master
zuorigin/master
, effektiv ersetzen die alte mit der neuen ein.Antworten:
Unterhaltsame Tatsache: Sogar Remote-Repositorys befinden sich in einem Zweig. Sie werden abgelehnt, weil Sie versuchen, den Zweig zu löschen, den Ihr Ursprung derzeit "ausgecheckt" hat.
Wenn Sie direkten Zugriff auf das Repo haben, können Sie einfach ein Shell-Bare-Repor-Verzeichnis öffnen und mit good old
git branch
sehen, auf welchem Zweigursprung sich derzeit befindet. Um es in einen anderen Zweig zu ändern, müssen Sie verwendengit symbolic-ref HEAD refs/heads/another-branch
.Wenn Sie einen Dienst wie Github oder Gitorious verwenden, müssen Sie die Benutzeroberfläche verwenden, die Ihnen das Tool zur Verfügung stellt, um die Änderung vorzunehmen (Informationen dazu finden Sie in dieser Antwort in gängigen Tools).
quelle
refs
in Git ! Vielen Dank! (Ja, ich wusste, wie man damit auf GithubAnstatt den Master tatsächlich vom Server zu entfernen, können Sie ihn folgendermaßen ersetzen:
Dadurch wird der Master durch den Inhalt der anderen Branche ersetzt, auf der Fernbedienung wird er jedoch weiterhin als Master bezeichnet. Und dann können Sie Master als Master in Ihrem lokalen auschecken.
quelle
master
Zweig nicht entfernen konnte , und die akzeptierte Antwort erklärt, warum.