Matthieu Moy <[EMAIL PROTECTED]> writes:

> Matthieu Moy <[EMAIL PROTECTED]> writes:
>
>> I'll give that a try tonight.
>
> I've got something reasonable.

I've been working a bit more on xgit. The diff-mode now has an
additional menu "GIT-Diff" when it's an xgit buffer. That's done with
derived mode and (dvc-function ... "diff-mode") instead of
(dvc-diff-mode) in the diff function helpers.

I'd prefer some additional items in the DVC-Diff menu, but I didn't
find a way to do that. If an Emacs guru reads me ...

(I don't use the menu in daily life, but I find it to be a very good
place to get the list of features and keybindings, so it's cool to
have a nice menu)

I think that's a reasonable example of a way to make a back-end
different from the other, while still reusing all of DVC.

At the moment, I just added "git add -u" (run "git add" on each
modified files) and "git reset --mixed" (reset the index to HEAD), but
there are still a lot of git-specific stuffs that could fit here.

For each file, you can

* Sync the file with
  - HEAD (git checkout HEAD file) <-- this one only is
                                      relevant to others.
                                      it's already ?U.
  - the index (git checkout file)

* Sync the index with
  - the HEAD (git reset --mixed HEAD file)
  - the file (git add file)

(my last two commits deal with the last two cases, but only for the
whole tree, not file-per-file).

I was thinking of adding the keybinding ?> as an alias for "add",
and ?< for "reset --mixed file". That way, one can stage/unstage with
< and >. Later, we can imagine to make < and > work for patch hunks
too.

I'm stoping here for tonight.

-- 
Matthieu

_______________________________________________
Dvc-dev mailing list
[email protected]
https://mail.gna.org/listinfo/dvc-dev

Reply via email to