Skip to content

Latest commit

 

History

History
23 lines (20 loc) · 750 Bytes

TODO.md

File metadata and controls

23 lines (20 loc) · 750 Bytes

NOTE: This is more complex than it seems, and requires a lot of thinking about the standard workflow, though the code should be pretty simple in the end.

Repos: A: repo of current working directory (nothing to do with this) B: repo containing files-to-be-commited C: repo to which we're committing (--git-dir)

source: Checked out branch in C, or "nothing" if C is a bare repo target: Branch in C to be commited to.

  1. Look at git-sh-setup.
  2. Do a fetch on target repo.
  3. IF source AND source has source-tracking AND source-tracking is ahead FAIL
  4. IF target is ancestor of target-tracking Do update-ref ELSE IF target-tracking is ancestor of target Do nothing ELSE FAIL