Re: How do we import patches from non-git sources?
From: Yann Dirson <hidden>
Date: 2016-06-15 22:43:12
On Thu, May 24, 2007 at 07:30:10AM -0700, Marc Singer wrote:
Is there a way to import patches that did not come from git? Remember that we'd like to include the functionality of git-am that adds new files to the index.
I have written a patch-application tool as part of the (otherwise stalled) ArcheoloGIT project, clonable from http://ydirson.free.fr/soft/git/argit.git/. Side note: it could make sense to finalize this script and integrate it in git proper. Opinions ? Although the command-line interface would probably benefit from an overhaul, it is fully functionning, notably supporting: - application of several patches in one row - application of non-incremental patches - eg. the 2.4.19rmk2 patch applies to plain 2.4.19, not to 2.4.19rmk1 | $ ../argit/ag-import-patch --help | Usage: ag-import-patch ( [-v] [-n] [-b BASE|-i] [-N NAME] [-p PARENT]... [-t TAG] PATCH )* | | Import a revision in a GIT history from a patch. | Part of the ArcheoloGIT toolkit. | Copyright (c) Yann Dirson, 2005 | Distributed under version 2 of the GNU GPL. Since it lacks doc, here is it: -i - process subsequent paches as incremental (the default) -b BASE - process subsequent paches as applying to commit BASE -N NAME - use given NAME instead of patch filename for generating commit message (useful for /dev/stdin import) -t TAG - tag after import -p PARENT - add PARENT to the parents eg: $ git checkout v2.4.19 $ ag-import-patch -b v2.4.19 \ -p v2.4.18rmk6 -t v2.4.19rmk1 patch-2.4.19rmk1.diff \ -t v2.4.19rmk2 patch-2.4.19rmk2.diff Hope this helps, -- Yann.