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

[PATCH 0/6] Make pull a builtin

From
SRStephen Robin <stephen.robin@gmail.com>
Date
May 6, 2015, 00:00 UTC
Message-ID
<1430870453-5408-1-git-send-email-stephen.robin@gmail.com>
In-Reply-To
<CACRoPnQ5_r-26J4gBHc27KZt3X9KAU7eFkA3vz_GE6_dP-Uyug@mail.gmail.com>
Hi Paul,

Congratulations on getting your project accepted for GSOC. Here's my attempt at implementing pull as a builtin, maybe it will be of some use as you look to progress your version.

It's fairly complete in the sense that all the features of git-pull.sh should be implemented, the test suite passes, and I've been using it myself without issue. At the same time it's some way from finished as I've never had time to test it fully and there are parts of the code I'm not happy with.

Apologies for not sharing this with you earlier. I have been too busy with paid work to look at any open source projects for some months.

Good luck with your project!

Regards Stephen

Stephen Robin (6):
  merge: tidy up options
  merge: move error message given when a merge needs committing to
    advice.c
  merge-base: split handle_fork_point to make reuse easier
  pull: reimplement as a builtin in C
  pull: allow interactive rebase
  parse-remote: dismantle git-parse-remote.sh
 .gitignore                           |    2 -
 Documentation/config.txt             |    1 +
 Documentation/git-parse-remote.txt   |   23 -
 Documentation/git-pull.txt           |    4 +-
 Makefile                             |    3 +-
 advice.c                             |    9 +
 advice.h                             |    1 +
 builtin.h                            |    3 +
 builtin/merge-base.c                 |   64 ++-
 builtin/merge.c                      |   16 +-
 builtin/pull.c                       | 1006 ++++++++++++++++++++++++++++++++++
 builtin/remote.c                     |    8 +-
 command-list.txt                     |    1 -
 contrib/examples/git-parse-remote.sh |   89 +++
 contrib/examples/git-pull.sh         |  340 ++++++++++++
 git-parse-remote.sh                  |   89 ---
 git-pull.sh                          |  340 ------------
 git-rebase.sh                        |   36 +-
 git-submodule.sh                     |    8 +-
 git.c                                |    1 +
 20 files changed, 1547 insertions(+), 497 deletions(-)
 delete mode 100644 Documentation/git-parse-remote.txt
 create mode 100644 builtin/pull.c
 create mode 100644 contrib/examples/git-parse-remote.sh
 create mode 100755 contrib/examples/git-pull.sh
 delete mode 100644 git-parse-remote.sh
 delete mode 100755 git-pull.sh
-- 
2.4.0.7.gf20f26f
Previous: Johannes SchindelinNext: Stephen Robin
Message 4 of 13 in “GSoC 2015: 2 accepted proposals”
  1. Matthieu MoyApr 27, 2015
  2. Paul TanApr 28, 2015
  3. Johannes SchindelinApr 29, 2015
  4. 0/6 Make pull a builtinStephen Robin, May 6, 2015
  5. 1/6 merge: tidy up optionsStephen Robin, May 6, 2015
  6. 2/6 merge: move error message given when a merge needs committing to advice.cStephen Robin, May 6, 2015
  7. 3/6 merge-base: split handle_fork_point to make reuse easierStephen Robin, May 6, 2015
  8. 4/6 pull: reimplement as a builtin in CStephen Robin, May 6, 2015
  9. 5/6 pull: allow interactive rebaseStephen Robin, May 6, 2015
  10. Johannes SchindelinMay 6, 2015
  11. 6/6 parse-remote: dismantle git-parse-remote.shStephen Robin, May 6, 2015
  12. Paul TanMay 6, 2015
  13. karthik nayakApr 28, 2015

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.