Open moodymudskipper opened 2 years ago
function_history(fun, max_commits, min_date, max_date)
might return a named list of functions where names are the commit hashes. Elements might have attributes describing the commit.
Let's give this object a class and provide a way to review the successive diffs of such object, maybe a show method ?
I'd like to see a script with all lines prefixed by comitter, original branch of commit, commit, date of last modification. Because that's a lot I'd like to be able to choose what I want to see. Overall should still look ok on full screen with fixed formatting if code respects more or less the < 80 char rule
I'd like to easily remove a commit, move squash, and have a helpful message to stop me if it creates a mess before it creates a mess.
Also if we can add "R smart" metadata to commits, like which functions it modifies etc we might have tidy selection for git commits.
before pushing I'd like to see a list of commits to push, and maybe reorder or squash on the spot. https://rstudio.github.io/sortable/
Also I'd like indentation to be checked, optionally style, with optional checks, maybe using liner or other
Maybe coverage too, is the added line covered ? at least inform
list of things we never want to commit :
n
, f
We might a list of bad to potentially bad things, in order, and decide to proceed, proposing automated fixes on the fly when possible.
We shouldn't be able to commit on top of WIP commit, if we tried to commit as WIP again, propose to reset and recommit everything as WIP, if we tried to commit with a new error message, propose to reset and commit changes appropriately.
Maybe we shouldn't be able to push a commit "oops" or "typo", or at least it should be signaled, propose to rebase interactive to squash them.
We should support rules for commit names and branch names, some formats might be forbidden, or some formats enforced. Some checks might be in place to make sure that referenced issue exists, we may signal if an issue is referenced by another branch name
Can we detect and warn if we try to do unrelated things in one commit, for instance these should be in different commits:
Since it'd just be an informative confirmation prompt, having heuristics that are 90% accurate is already useful
ohshitgit should be searchable easily from the package, we should also go through it and build functions around the use cases, there are only 9 of them.
If I stash something, I would like to now how deep is the stash, and I'd like to be able to set a limit as an option, and maybe the default would just be one, so we make sure we don't over stash
It'd be nice to have a git dm, it would have a remote part though, can we make it work with dbplyr ? with some remote tables that require a git connection to be resolved ?
can 2 branches be merged without conflicts ? git_conflicts(x, y)
?
I want a git utility that :
display_git_code = TRUE
andrun_command = TRUE
by default