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

Re: Cloning empty repositories, was Re: What is the idea for bare repositories?

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Nov 12, 2007, 22:17 UTC
Message-ID
<Pine.LNX.4.64.0711122212540.4362@racer.site>
In-Reply-To
<alpine.LFD.0.9999.0711121702030.21255@xanadu.home>
Hi,
On Mon, 12 Nov 2007, Nicolas Pitre wrote:
Show 14 quoted lines
> On Mon, 12 Nov 2007, Junio C Hamano wrote:
> 
> > His second point is also a real issue.  If you allowed cloning
> > an empty repo (either bare or non-bare), then you and Bill can
> > both clone from it, come up with an initial commit each.  Bill
> > pushes his initial commit first.  Your later attempt to push
> > will hopefully fail with "non fast forward", if you know better
> > than forcing such a push, but then what?  You need to fetch, and
> > merge (or rebase) your change on top of Bill's initial commit,
> > and at that point the history you are trying to merge does not
> > have any common ancestor with his history.
> 
> While that could well be true, I don't see this condition happening 
> solely in the context (hence because) of an empty clone.
Hehe.  That is a very delicate play with predicates.

If Alice and Bob clone from an empty repository, and both work on it, there is _no way_ that they can have a common ancestor[*]. Hence, an empty clone _would_ be a cause of that condition.

The only way to _not_ have this condition would be at least one side starting with a non-empty clone. Or with an _effectively_ non-empty clone.

Ciao, Dscho

[*] Oh yes, theoretically they could commit the same commit with the same author info and author timestamp, but to be a common ancestor, they would also have to use the same _committer_information, which means that Alice == Bob, as far as Git is concerned. Do I have to go on?

Previous: Nicolas PitreNext: David Kastrup
Message 17 of 68 in “What is the idea for bare repositories?”
  1. David KastrupNov 12, 2007
  2. Bruno Cesar RibasNov 12, 2007
  3. Johannes SchindelinNov 12, 2007
  4. Jan WielemakerNov 12, 2007
  5. Cloning empty repositories, was Re: What is the idea for bare repositories?Johannes Schindelin, Nov 12, 2007
  6. Matthieu MoyNov 12, 2007
  7. Johannes SchindelinNov 12, 2007
  8. Bill LearNov 12, 2007
  9. Johannes SchindelinNov 12, 2007
  10. Matthieu MoyNov 12, 2007
  11. Johannes SchindelinNov 12, 2007
  12. Matthieu MoyNov 12, 2007
  13. Johannes SchindelinNov 12, 2007
  14. Matthieu MoyNov 12, 2007
  15. Junio C HamanoNov 12, 2007
  16. Nicolas PitreNov 12, 2007
  17. Johannes SchindelinNov 12, 2007
  18. David KastrupNov 13, 2007
  19. Andreas EricssonNov 13, 2007
  20. Matthieu MoyNov 13, 2007
  21. Shawn O. PearceNov 13, 2007
  22. Matthieu MoyNov 13, 2007
  23. Jeff KingNov 13, 2007
  24. Brian GernhardtNov 13, 2007
  25. Matthieu MoyNov 13, 2007
  26. Johannes SchindelinNov 13, 2007
  27. Matthieu MoyNov 14, 2007
  28. Nicolas PitreNov 13, 2007
  29. Jakub NarebskiNov 13, 2007
  30. Johannes SchindelinNov 13, 2007
  31. Junio C HamanoNov 13, 2007
  32. Matthieu MoyNov 13, 2007
  33. Junio C HamanoNov 14, 2007
  34. Matthieu MoyNov 14, 2007
  35. Sergei OrganovNov 14, 2007
  36. Jakub NarebskiNov 14, 2007
  37. Matthieu MoyNov 14, 2007
  38. Sergei OrganovNov 14, 2007
  39. Junio C HamanoNov 14, 2007
  40. Bill LearNov 14, 2007
  41. Bill LearNov 14, 2007
  42. Wincent ColaiutaNov 14, 2007
  43. Johannes SchindelinNov 14, 2007
  44. Bill LearNov 14, 2007
  45. Johannes SchindelinNov 15, 2007
  46. Andreas EricssonNov 15, 2007
  47. David KastrupNov 15, 2007
  48. Andreas EricssonNov 15, 2007
  49. Johannes SchindelinNov 15, 2007
  50. Jeff KingNov 15, 2007
  51. Jeff KingNov 18, 2007
  52. Junio C HamanoNov 18, 2007
  53. Jeff KingNov 18, 2007
  54. Jan WielemakerNov 12, 2007
  55. Bill LearNov 12, 2007
  56. David KastrupNov 12, 2007
  57. Nicolas PitreNov 12, 2007
  58. Johannes SchindelinNov 12, 2007
  59. Nicolas PitreNov 12, 2007
  60. Andreas EricssonNov 12, 2007
  61. Junio C HamanoNov 12, 2007
  62. Jakub NarebskiNov 12, 2007
  63. Jakub NarebskiNov 12, 2007
  64. David TweedNov 12, 2007
  65. David KastrupNov 12, 2007
  66. Jakub NarebskiNov 12, 2007
  67. David KastrupNov 12, 2007
  68. David KastrupNov 15, 2007

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.