git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Deleting the "current" branch in remote bare repositories

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Feb 7, 2009, 22:05 UTC
Message-ID
<94a0d4530902071405m33a0804er8030e14bea205898@mail.gmail.com>
In-Reply-To
<20090207162754.5fb8b63f@perceptron>
On Sat, Feb 7, 2009 at 5:27 PM, Jan Krüger <jk@jk.gs> wrote:
Show 25 quoted lines
> Hi everyone,
>
> recently on IRC we had a case where someone had accidentally deleted
> the "current" branch (i.e. thing pointed to by HEAD) by using "git push
> origin :master". This broke the remote HEAD as well as the local
> refs/remotes/origin/HEAD. Not good. I think we want to make it harder
> to get into this situation.
>
> Personally, without being aware of any potential counterindications, I
> think the best solution from a usability point of view would
> be to have receive-pack reject deletions of what's currently in HEAD.
> The question is, of course: how do we go about situations where someone
> actually wants to delete the branch HEAD points at?
>
> 1. reject deletion and point out a command to change HEAD first (I
> don't think we've got a command to do this remotely; do we want one?)
>
> 2. automatically change HEAD to something else if there's any other
> branch (eww)
>
> 3. accept the deletion but warn the user that she just broke the
> repository (especially eww because it also breaks the local tracking
> ref)
>
> Any smart ideas?

This was brought up before: http://marc.info/?l=git&m=123254293910829&w=2

But I don't think it reached any conclusion.
-- 
Felipe Contreras
Previous: Jan KrügerNext: Jan Krüger
Message 2 of 29 in “Deleting the "current" branch in remote bare repositories”
  1. Jan KrügerFeb 7, 2009
  2. Felipe ContrerasFeb 7, 2009
  3. Jan KrügerFeb 8, 2009
  4. Jeff KingFeb 8, 2009
  5. Junio C HamanoFeb 8, 2009
  6. Jeff KingFeb 8, 2009
  7. Junio C HamanoFeb 8, 2009
  8. 0/6 Deleting the "current" branch in a remote repositoryJunio C Hamano, Feb 9, 2009
  9. 1/6 builtin-receive-pack.c: do not initialize statics to 0Junio C Hamano, Feb 9, 2009
  10. 2/6 t5400: allow individual tests to failJunio C Hamano, Feb 9, 2009
  11. 3/6 receive-pack: receive.denyDeleteCurrentJunio C Hamano, Feb 9, 2009
  12. 4/6 remote prune: warn dangling symrefsJunio C Hamano, Feb 9, 2009
  13. 5/6 Warn use of "origin" when remotes/origin/HEAD is danglingJunio C Hamano, Feb 9, 2009
  14. 6/6 receive-pack: default receive.denyDeleteCurrent to refuseJunio C Hamano, Feb 9, 2009
  15. Jeff KingFeb 9, 2009
  16. Junio C HamanoFeb 11, 2009
  17. Jeff KingFeb 11, 2009
  18. Jeff KingFeb 11, 2009
  19. Jeff KingFeb 9, 2009
  20. Jeff KingFeb 9, 2009
  21. Junio C HamanoFeb 9, 2009
  22. Jeff KingFeb 10, 2009
  23. Junio C HamanoFeb 10, 2009
  24. Jeff KingFeb 9, 2009
  25. Junio C HamanoFeb 9, 2009
  26. Junio C HamanoFeb 9, 2009
  27. Jeff KingFeb 10, 2009
  28. Jeff KingFeb 9, 2009
  29. Jeff KingFeb 9, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.