Thread (14 messages) 14 messages, 7 authors, 2016-06-15

Re: simple cvs-like git wrapper

From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:44:09

Hi,

On Fri, 1 Feb 2008, Kate Rhodes wrote:
I'm leaning towards agreement with Shawn that you're a little confused 
as to how syncing works or you're not adequately expressing what you're 
really hoping for and why git isn't doing it and we're misunderstanding 
you.
Well, the thing is: git (plumbing) does not really care about syncing and 
how that works.  The core of git is "just" a very clever object database, 
geared towards revision control.

So in theory, Ed could just go and write a porcelain for git, which does 
_exactly_ what he wants, yet would be mostly interoperable with other git 
porcelains.

I imagine that the "cvsish update" would boil down to fetching upstream, 
updating the index with what the user has in the working directory 
(something like "git add -u"), then write out a tree from that, and call 
merge-recursive on that tree and the upstream's current tree.  Force fast 
forward master, but keep the index, keeping the error output of 
merge-recursive.  Done.

However, you need to understand the internals of git enough to do that.  
Especially the conflict management, and its relation with the index.

And I cannot see how that understanding would not lead to abandoning that 
work-flow as suboptimal.  But hey, that's just my private opinion.

Ciao,
Dscho
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help