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

Re: simple cvs-like git wrapper

From
Daniel Barkalow <barkalow@iabervon.org>
Date
Jan 30, 2008, 19:49 UTC
Message-ID
<alpine.LNX.1.00.0801301439070.13593@iabervon.org>
In-Reply-To
<20080130021050.GB9612@venus>
On Tue, 29 Jan 2008, Ed S. Peschko wrote:
Show 13 quoted lines
> > One thing (besides horrible branching and even worse merging)  which I
> > hated in multi-user CVS is the "cvs update", namely the fact that if
> > you want to commit changes, you _have_ to rebase them on top of
> > current work. So when you are ready to commit, when you have tested
> > everything, you are sometimes forced to resolve a merge to be able to
> > commit... and have to test resolved merge... and perhaps again, and
> > again.
> 
> Yeah, I realize that it's not exactly the best solution for every
> project, but for projects tied to a piece of hardware (ie: a database, a
> particular box, etc), its much more important to be in sync, to have 
> 'one true view' of the world rather than to have the freedom to have 
> multiple views.

Actually, it's a simpler concern: with CVS (and most version control systems), you can't make a permanent record of your state without resolving conflicts. With git, you make the permanent record first, and then resolve conflicts in order to get a state that includes your changes and can be pushed to the shared location. With git, you can still have "one true view" of the world; it's just that git really really doesn't want to lose your work, so it refuses to overwrite your files unless you've put them in its storage, where it can give them back if it does something wrong with your working tree.

Of course, your "gvs update" could do a local git commit of the current state, fetch the remote changes, and rebase the local commit onto them, so it's not necessarily a workflow change. But note that, if the user fails to do a manual merge, the user can try again, or try working on a different branch, or fork at that point, depending on how hopeless the situation is.

	-Daniel
*This .sig left intentionally blank*
Previous: Junio C HamanoNext: Kate Rhodes
Message 10 of 15 in “simple cvs-like git wrapper”
  1. Ed S. PeschkoJan 29, 2008
  2. Jakub NarebskiJan 29, 2008
  3. Ed S. PeschkoJan 30, 2008
  4. Shawn O. PearceJan 30, 2008
  5. Ed S. PeschkoJan 30, 2008
  6. Shawn O. PearceJan 31, 2008
  7. Ed S. PeschkoJan 31, 2008
  8. Shawn O. PearceJan 31, 2008
  9. Junio C HamanoJan 31, 2008
  10. Daniel BarkalowJan 30, 2008
  11. Kate RhodesFeb 1, 2008
  12. Johannes SchindelinFeb 1, 2008
  13. Jakub NarebskiFeb 1, 2008
  14. Uwe Kleine-KönigFeb 1, 2008
  15. Jakub NarebskiFeb 1, 2008

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.