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

Re: kha/safe and kha/experimental updated

From
Jakub Narebski <jnareb@gmail.com>
Date
Dec 19, 2007, 16:23 UTC
Message-ID
<200712191723.29591.jnareb@gmail.com>
In-Reply-To
<20071219114021.GB5565@diana.vm.bytemark.co.uk>
Karl Hasselström wrote:
Show 29 quoted lines
> On 2007-12-19 11:44:57 +0100, Jakub Narebski wrote:
>> On Wed, 19 Dec 2007, Karl Hasselström wrote:
>>> On 2007-12-18 08:39:52 -0800, Jakub Narebski wrote:
>>>
>>>> I also would like to have this command kept (and shown in 'stg
>>>> help'!). Contrary to 'git add' it can check and add to index /
>>>> update index only for files with conflict; we have -r
>>>> (ancestor|current|patched) to choose one side, and we could add
>>>> --check to check if there are no conflict markers with files
>>>> (useful with -a/--all).
>>>
>>> This too sounds like stuff that could profitably be added to "git
>>> add". Except for the ancestor/current/patched words, it is not
>>> specific to patch stacks, so the implementation should be in git
>>> and not in stg.
>>
>> No it cannot, at least the '-r (ancestor|current|patched)' part for
>> resetting file to given version, even if we change the wording to
>> ancestor, ours and theirs. The git-add command is about adding
>> contents, which updates index, which almost as a intended
>> side-effect clears merge state, i.e. stages; and not about resetting
>> to stage.
> 
>   git checkout-index --stage=1|2|3 <filename>
> 
> does what you want. But "git cat-file" knows this handy syntax for
> getting at particular index stages:
> 
>   :stage:<filename>

I always forget which stage is which. It would be nice if git-checkout-index implemented human-friendly names, just like git-diff-files has --base, --ours, --theirs, i.e. if it would be possible to write

  git checkout-index --stage=base|ours|theirs <filename>
and perhaps even
  :base|ours|theirs:<filename>.
(but there is a problem with files containing ':'...).
Show 6 quoted lines
> It would be very convenient to be able to do
> 
>   git checkout :stage:<filename>
> 
> but it doesn't seem to work currently. Does anyone know the "best" way
> of manually checking out a particular index stage in git?
It's a pity it doesn't work. Or if not this, then perhaps
  git checkout --stage=ours -- <filename>
Show 20 quoted lines
>> Besides with "stg resolved" you can update index _only_ for files
>> which were in the conflict, also for -a/--all, and not all the files
>> not only those which were in the conflict like "git add -u" does.
> 
> This sounds like a straightforward addition to "git add".
> 
>> "stg resolved --check" could happily ignore things that only look
>> like conflict markers, but must have been intended, because they are
>> in files not in conflict.
> 
> git knows about conflicting files too.
> 
>> Unless you are talking about adding "resolve"/"resolved" command to
>> git-core, as a porcelain wrapper around git-update-index, like "git
>> add"...
> 
> Yes, that's what I want. You and others like what "stg resolved" does,
> but I don't want it in StGit because it's a generic git enhancement
> that has nothing to with patch stacks. People who don't use StGit
> would presumably like it as well.

You mean adding another option to git-add, similar to '-u' option, but updating only the files which were (are) in merge conflict; '-c'/'-r'/'-s' perhaps? This would be replacement for "stg resolved --all", wouldn't it (and with filename replacement for "stg resolved <filename>", of course)?

P.S. Sidenote: it would be nice if git-mergetool was updated to understand StGIT style interactive 2-way and 3-way merge configuration, and not offer only limited choice of pre-defined interactive merge tools (although pre-defined are nice, too).

-- 
Jakub Narebski
Poland
Previous: Catalin MarinasNext: Catalin Marinas
Message 32 of 57 in “Series short description”
  1. 00/17 Series short descriptionDavid Kågedal, Dec 14, 2007
  2. 01/17 Add an StGit mode for emacsDavid Kågedal, Dec 14, 2007
  3. 02/17 Emacs mode: Show keybindings when user presses "h" or "?"David Kågedal, Dec 14, 2007
  4. 03/17 Emacs mode: Add an explanatory headerDavid Kågedal, Dec 14, 2007
  5. 04/17 Emacs mode: Makefile for building stgit.elDavid Kågedal, Dec 14, 2007
  6. 05/17 Emacs mode: push/pop next patch, not patch at pointDavid Kågedal, Dec 14, 2007
  7. 06/17 Emacs mode: Let "P" push or pop patch at pointDavid Kågedal, Dec 14, 2007
  8. 07/17 Emacs mode: Bind "G" to "stg goto"David Kågedal, Dec 14, 2007
  9. 08/17 Emacs mode: show patches' short descriptionDavid Kågedal, Dec 14, 2007
  10. 09/17 Emacs mode: Improve the output buffer stateDavid Kågedal, Dec 14, 2007
  11. 10/17 Emacs mode: Bind n and pDavid Kågedal, Dec 14, 2007
  12. 11/17 Emacs mode: add stgit-repairDavid Kågedal, Dec 14, 2007
  13. 12/17 Emacs mode: added stgit-commit and stgit-uncommitDavid Kågedal, Dec 14, 2007
  14. 13/17 Emacs mode: Add stgit-edit commandDavid Kågedal, Dec 14, 2007
  15. 14/17 Emacs mode: added fontificationDavid Kågedal, Dec 14, 2007
  16. 15/17 Emacs mode: Added stgit-newDavid Kågedal, Dec 14, 2007
  17. 16/17 Emacs mode: Add mark commandDavid Kågedal, Dec 14, 2007
  18. 17/17 Emacs mode: coalesce commandDavid Kågedal, Dec 14, 2007
  19. Catalin MarinasDec 17, 2007
  20. Karl HasselströmDec 17, 2007
  21. kha/safe and kha/experimental updatedKarl Hasselström, Dec 18, 2007
  22. Catalin MarinasDec 18, 2007
  23. Jakub NarebskiDec 18, 2007
  24. Catalin MarinasDec 18, 2007
  25. David KågedalDec 19, 2007
  26. David KågedalDec 19, 2007
  27. Catalin MarinasDec 19, 2007
  28. Karl HasselströmDec 19, 2007
  29. Jakub NarebskiDec 19, 2007
  30. Karl HasselströmDec 19, 2007
  31. Catalin MarinasDec 19, 2007
  32. Jakub NarebskiDec 19, 2007
  33. Catalin MarinasDec 19, 2007
  34. David KågedalDec 19, 2007
  35. Karl HasselströmDec 19, 2007
  36. Karl HasselströmDec 19, 2007
  37. Catalin MarinasDec 19, 2007
  38. Karl HasselströmDec 19, 2007
  39. Catalin MarinasDec 19, 2007
  40. Karl HasselströmDec 19, 2007
  41. Catalin MarinasDec 19, 2007
  42. Catalin MarinasDec 19, 2007
  43. David KågedalDec 19, 2007
  44. Catalin MarinasDec 18, 2007
  45. David KågedalDec 18, 2007
  46. Karl HasselströmDec 18, 2007
  47. 0/2 Make new infrastructure subdirectory safeKarl Hasselström, Dec 19, 2007
  48. 1/2 Test that "stg goto" can be called from a subdirectoryKarl Hasselström, Dec 19, 2007
  49. 2/2 Make "stg goto" subdirectory safeKarl Hasselström, Dec 19, 2007
  50. kha/safe updatedKarl Hasselström, Dec 19, 2007
  51. Catalin MarinasDec 19, 2007
  52. Karl HasselströmDec 19, 2007
  53. Catalin MarinasDec 19, 2007
  54. Karl HasselströmDec 20, 2007
  55. David KågedalDec 19, 2007
  56. Karl HasselströmDec 20, 2007
  57. Karl HasselströmDec 19, 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.