Smart pull for fetch and rebase
Created originally on Bitbucket by Anonymous
Hello. Very often, while doing pull with fetch or rebase, there are some uncommitted changes. Sometimes, it is possible to do Update (when local (nonsynched) changes wasn't yet committed), but otherwise it becomes a small problem. One way to solve it is temporarily shelve all uncommitted changes, then do fetch or rebase, and at last, unshelve changes (which becomes a trouble in presence of some conflicts). I suggest to add an option to the synch window, which can deal with uncommitted changes -- when doing fetch or rebase with this option turned on, all uncommitted changes firstly stored in some temporary folder, then working directory is cleaned, and after fetch or rebase is done, at last, that stored changed files merged (3way) with working dir. This much more secure than doing shelve, and such option allow totally avoid necessity of temporarily switching to Update from rebase.