summaryrefslogtreecommitdiff
path: root/tools/patman/gitutil.py
AgeCommit message (Collapse)Author
2014-09-09patman: RunPipe() should not pipe stdout/stderr unless askedSimon Glass
RunPipe() currently pipes the output of stdout and stderr to a pty, but this is not the intended behaviour. Fix it. Signed-off-by: Simon Glass <[email protected]>
2014-09-05patman: Fix detection of git versionSimon Glass
A missing 'global' declaration means that this feature does not currently work. Fix it. Signed-off-by: Simon Glass <[email protected]>
2014-09-05patman: Use --no-pager' to stop git from forking a pagerSimon Glass
In a headless environment the pager can apparently hang. We don't want a pager anyway so let's request that none be used. Reported-by: Tom Rini <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-09-05patman: Remove the -a optionSimon Glass
It seems that this is no longer needed, since checkpatch.pl will catch whitespace problems in patches. Also the option is not widely used, so it seems safe to just remove it. Suggested-by: Masahiro Yamada <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-09-05patman: Correct unit tests to run correctlySimon Glass
It seems that doctest behaves differently now, and some of the unit tests do not run. Adjust the tests to work correctly. ./tools/patman/patman --test <unittest.result.TestResult run=10 errors=0 failures=0> Signed-off-by: Simon Glass <[email protected]>
2014-08-28patman: Support the 'reverse' option for 'git log'Simon Glass
This option is currently not supported, but needs to be, for buildman to operate as expected. Reported-by: York Sun <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-08-13patman: Only use git's --no-decorate when availableSimon Glass
Older versions of git (e.g. Ubuntu 10.04) do not support this flag. By default they do not decorate. So only enable this flag when supported. Suggested-by: Tom Rini <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-08-13patman: Move the 'git log' command into a functionSimon Glass
Move the code that builds a 'git log' command into a function so we can more easily adjust it. Signed-off-by: Simon Glass <[email protected]>
2014-07-28patman: make "No recipient" checking more tolerantMasahiro Yamada
If Series-to tag is missing, Patman exits with a message "No recipient". This is just annoying for those who had already added sendemail.to configuration. I guess many developers have [sendemail] to = [email protected] in their .git/config because the 'To: [email protected]' field should always be added when sending patches. That seems more reasonable rather than adding 'Series-to: [email protected]' to every patch series. Patman should exit only when both Series-to tag and sendemail.to configuration are mising. Signed-off-by: Masahiro Yamada <[email protected]> Cc: Simon Glass <[email protected]> Acked-by: Simon Glass <[email protected]>
2014-07-07patman: Only apply patches when we know the original HEADSimon Glass
When patman applies the patches it checks out a new branch, uses 'git am' to apply the patches one by one, and then tries to go back to the old branch. If you try this when the branch is 'undefined', this doesn't work as patman cannot restore the correct branch after applying the patches. It seems that 'undefined' is created by git and is persistent after it is created, so that you can end up on quite an old branch. Add a check for the 'undefined' branch to avoid this. Reported-by: Masahiro Yamada <[email protected]> Signed-off-by: Simon Glass <[email protected]>
2014-05-09patman: Deal with 'git apply' failures correctlySimon Glass
This sort of failure is rare, but the code to deal with it is wrong. Fix it. Signed-off-by: Simon Glass <[email protected]>
2013-07-24Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk
Signed-off-by: Wolfgang Denk <[email protected]> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <[email protected]>
2013-05-14buildman: Produce a sensible error message when branch is missingSimon Glass
Rather than a backtrace, produce a nice error message when an invalid branch is provided to buildman. Signed-off-by: Simon Glass <[email protected]>
2013-04-18patman: fix gitutil for decorationsAndreas Bießmann
The git config parameter log.decorate is quite useful when working with git. Patman, however can not handle the decorated output when parsing the commit. To prevent this use the '--no-decorate' switch for git-log. Signed-off-by: Andreas Bießmann <[email protected]> Acked-by: Simon Glass <[email protected]>
2013-04-08patman: Provide option to ignore bad aliasesSimon Glass
Often it happens that patches include tags which don't have aliases. It is annoying that patman fails in this case, and provides no option to continue other than adding empty tags to the .patman file. Correct this by adding a '-t' option to ignore tags that don't exist. Print a warning instead. Since running the tests is not a common operation, move this to --test instead, to reserve -t for this new option. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Doug Anderson <[email protected]>
2013-04-04patman: Allow specifying the message ID your series is in reply toDoug Anderson
Some versions of git don't seem to prompt you for the message ID that your series is in reply to. Allow specifying this from the command line. Signed-off-by: Doug Anderson <[email protected]> Acked-by: Simon Glass <[email protected]>
2013-04-04patman: Add additional git utiltiesSimon Glass
Add methods to find out the commits in a branch, clone a repo and fetch from a repo. Signed-off-by: Simon Glass <[email protected]>
2013-04-04patman: Allow commands to raise on error, or notSimon Glass
Make raise_on_error a parameter so that we can control which commands raise and which do not. If we get an error reading the alias file, just continue. Signed-off-by: Simon Glass <[email protected]>
2013-04-04patman: Make command methods return a CommandResultSimon Glass
Rather than returning a list of things, return an object. That makes it easier to access the returned items, and easier to extend the return value later. Signed-off-by: Simon Glass <[email protected]>
2013-01-31patman: Add support for settings in .patmanDoug Anderson
This patch adds support for a [settings] section in the .patman file. In this section you can add settings that will affect the default values for command-line options. Support is added in a generic way such that any setting can be updated by just referring to the "dest" of the option that is passed to the option parser. At the moment options that would make sense to put in settings are "ignore_errors", "process_tags", and "verbose". You could override them like: [settings] ignore_errors: True process_tags: False verbose: True The settings functionality is also used in a future change which adds support for per-project settings. Signed-off-by: Doug Anderson <[email protected]>
2013-01-31patman: Allow tests to run even if patman is in the pathDoug Anderson
Several of the patman doctests assume that patman was run with: ./patman Fix them so that they work even if patman is run with just "patman" (because patman is in the path). Signed-off-by: Doug Anderson <[email protected]> Acked-by: Simon Glass <[email protected]>
2012-10-19patman: force git log commands to not use colorAlbert ARIBAUD
Colored logs confuse patman when analyzing logs. Add --no-color option in git log commands in case the default config has color. Signed-off-by: Albert ARIBAUD <[email protected]> Acked-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2012-06-19patman: Handle creation of patman config fileVikram Narayanan
patman shouts when it couldn't find a $(HOME)/.patman file. Handle it in a sane way by creating a new one for the user. It looks for a user.name and user.email in the global .gitconfig file, waits for the user input if it can't find there. Update the same in the README Signed-off-by: Vikram Narayanan <[email protected]> Acked-by: Simon Glass <[email protected]> Cc: Simon Glass <[email protected]> Cc: Wolfgang Denk <[email protected]>
2012-04-21Add 'patman' patch generation, checking and submission scriptSimon Glass
What is this? ============= This tool is a Python script which: - Creates patch directly from your branch - Cleans them up by removing unwanted tags - Inserts a cover letter with change lists - Runs the patches through checkpatch.pl and its own checks - Optionally emails them out to selected people It is intended to automate patch creation and make it a less error-prone process. It is useful for U-Boot and Linux work so far, since it uses the checkpatch.pl script. It is configured almost entirely by tags it finds in your commits. This means that you can work on a number of different branches at once, and keep the settings with each branch rather than having to git format-patch, git send-email, etc. with the correct parameters each time. So for example if you put: in one of your commits, the series will be sent there. See the README file for full details. END Signed-off-by: Simon Glass <[email protected]>