-
-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[cherry-picker] Cherry-picker looses state if the target branch doesn't have a config in it #277
Comments
Hi, I'm GitMate.io! It seems you've just enabled the issue triaging. I'm just scraping all issues from your repository and will give you some more information about this in a few minutes or so. Because of the rate limit we can't scrape all information (including all comments and authors) right now - our system is already set up to scrape this in the next days over which the predictions will become more precise every day. If you want me to use a different account for triaging your issues, simply create one and log in with it. Sit tight! |
GitMate.io thinks possibly related issues are #249 ([cherry-picker] Document config options), #250 ([cherry-picker] Misleading assumption about the main branch), #251 ([cherry-picker] Misleading assumption about backport branches naming), #44 (Add the branch number to cherry pick commits?), and #89 (Change cherry-picker's README to treat it as a package). |
@Mariatta Wow, this bot is pretty aggressive :) |
I'm thinking this can be thought of in two ways:
Do you think one of these strategies is more desirable? |
Are you referring to I was thinking about storing smth temporary for paused mode under |
Canonical config would be the toml file. But if that's the route bring taken, then it would be storing one config value in .git/config that points to it. For example,
I don't think of config as a place for storing temporary information. But maybe in the git ecosystem, it's common? (I think git's own commands store temporary state in .git/ but not in .git/config?) |
Yes, git itself uses |
I didn't write this bot! Is the loss of information because you don't have |
Well, basically yes. It's because in this "paused" mode the config is not there. |
Ok. I'm fine with saving the currently used config somewhere, and clean it up afterwards. |
It's fine for key-value things, but it will probably not preserve variable types:
So I'm not sure whether we should go for it. A more resilient way is to copy a temporary config under |
Makes sense. +1 to saving the toml in /tmp/ |
and clean up the tmp directory too afterwards. |
of course :) |
Subproblems:
|
JFYI I've started working on a state preservation solution, which will rely on storing state in local (repo) Git config and will also read config contents directly from the correct revision in Git tree w/o creating a tmp file, which is even more resilient. This is going to be fun :) |
This command |
Closing this since subproblems https://github.com/python/core-workflow/issues/107 and https://github.com/python/core-workflow/issues/108 can be addressed separately based on the work in #295. |
Basically, if there's some conflict and cherry-picker pauses it gets lost, not knowing how to proceed with
--continue
.I think, one workaround might be to backport the commit with config.
However, it looks cleaner to me if we could use smth like
git config
(abuse custom.git/config
section?) to have some state information in there. What do you think?/cc: @abadger
The text was updated successfully, but these errors were encountered: