git-commit-vandalism/lib
Shawn O. Pearce 5b6ffff644 git-gui: GUI support for running 'git remote prune <name>'
In some workflows it is common for a large number of temporary
branches to be created in a remote repository, get fetched to
clients that typically only use git-gui, and then later have
those branches deleted from the remote repository once they have
been fully merged into all destination branches.  Users of git-gui
would obviously like to have their local tracking branches cleaned
up for them, otherwise their local tracking branch namespace would
grow out of control.

The best known way to remove these tracking branches is to run
"git remote prune <remotename>".  Even though it is more of a
Porcelain command than plumbing I'm invoking it through the UI,
because frankly I don't see a reason to reimplement its ls-remote
output filtering and config file parsing.

A new configuration option (gui.pruneduringfetch) can be used to
automatically enable running "git remote prune <remotename>" after
the fetch of that remote also completes successfully.  This is off
by default as it require an additional network connection and is
not very fast on Cygwin if a large number of tracking branches have
been removed (due to the 2 fork+exec calls per branch).

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
2007-05-28 17:50:40 -04:00
..
blame.tcl git-gui: Format author/committer times in ISO format 2007-05-09 00:48:27 -04:00
branch.tcl git-gui: Refactor into multiple files to save my sanity 2007-05-07 23:35:48 -04:00
browser.tcl git-gui: Convert blame to the "class" way of doing things 2007-05-08 21:38:55 -04:00
class.tcl git-gui: Don't attempt to inline array reads in methods 2007-05-08 21:38:54 -04:00
commit.tcl git-gui: Refactor into multiple files to save my sanity 2007-05-07 23:35:48 -04:00
console.tcl git-gui: Convert browser, console to "class" format 2007-05-08 21:38:54 -04:00
database.tcl git-gui: Convert browser, console to "class" format 2007-05-08 21:38:54 -04:00
diff.tcl git-gui: Refactor into multiple files to save my sanity 2007-05-07 23:35:48 -04:00
error.tcl git-gui: Refactor into multiple files to save my sanity 2007-05-07 23:35:48 -04:00
index.tcl git-gui: Refactor into multiple files to save my sanity 2007-05-07 23:35:48 -04:00
merge.tcl git-gui: Convert browser, console to "class" format 2007-05-08 21:38:54 -04:00
option.tcl git-gui: GUI support for running 'git remote prune <name>' 2007-05-28 17:50:40 -04:00
remote.tcl git-gui: GUI support for running 'git remote prune <name>' 2007-05-28 17:50:40 -04:00
shortcut.tcl git-gui: Refactor into multiple files to save my sanity 2007-05-07 23:35:48 -04:00
transport.tcl git-gui: GUI support for running 'git remote prune <name>' 2007-05-28 17:50:40 -04:00