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

Re: keeping remote repo checked out?

From
Linus Torvalds <torvalds@osdl.org>
Date
Nov 29, 2005, 00:43 UTC
Message-ID
<Pine.LNX.4.64.0511281637480.3177@g5.osdl.org>
In-Reply-To
<Pine.LNX.4.64.0511281845280.25300@iabervon.org>
On Mon, 28 Nov 2005, Daniel Barkalow wrote:
Show 5 quoted lines
> 
> We really ought to keep track of what the current checked out tree is, 
> independant of the head that it's supposed to match. Then it would be safe 
> to push to a head that's checked out (it wouldn't update it, but the 
> system would understand what's going on).
Well, that's what branches are all about. 
You really have two choices:
 - do it all yourself
 - use git branches

but if you use a special git branch for the checked-out state, then you have to realize that nobody can push directly to it.

You'd have a trigger that triggers on a push to _another_ branch, and then the trigger basically does an automatic "git pull" from that branch (and updates the checked-out state as part of that).

But you _still_ need to do the locking. That's very fundamental. There is no locking in a "git push", exactly because it can push in parallel, by design. And you _cannot_ check out a tree in parallel, so you have to do locking for that.

There's no way you can avoid the locking. You can do shortcuts: for example, you could avoid any explicit locking by having the "checkout" just happen once an hour, with an automatic "pull" from the changed branch. Again, that means that the branch that is checked out can NOT be one of the branches that people push to.

		Linus
Previous: Daniel BarkalowNext: Daniel Barkalow
Message 9 of 25 in “keeping remote repo checked out?”
  1. James CloosNov 28, 2005
  2. Junio C HamanoNov 28, 2005
  3. Petr BaudisNov 28, 2005
  4. Junio C HamanoNov 28, 2005
  5. Petr BaudisNov 28, 2005
  6. Junio C HamanoNov 28, 2005
  7. Linus TorvaldsNov 28, 2005
  8. Daniel BarkalowNov 29, 2005
  9. Linus TorvaldsNov 29, 2005
  10. Daniel BarkalowNov 29, 2005
  11. Linus TorvaldsNov 29, 2005
  12. Re: keeping remote repo checked out?Daniel Barkalow, Nov 29, 2005
  13. Linus TorvaldsNov 29, 2005
  14. Daniel BarkalowNov 29, 2005
  15. Junio C HamanoNov 29, 2005
  16. Daniel BarkalowNov 29, 2005
  17. Junio C HamanoNov 29, 2005
  18. Matthias UrlichsNov 29, 2005
  19. Junio C HamanoNov 29, 2005
  20. Daniel BarkalowNov 29, 2005
  21. Junio C HamanoNov 29, 2005
  22. Daniel BarkalowNov 29, 2005
  23. Matthias UrlichsNov 29, 2005
  24. James CloosDec 1, 2005
  25. Junio C HamanoDec 1, 2005

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.