• Icon: Suggestion Suggestion
    • Resolution: Unresolved
    • None
    • None
    • None
    • OSX 10.9.5
    • Our product teams collect and evaluate feedback from a number of different sources. To learn more about how we use customer feedback in the planning process, check out our new feature policy.

      Interactive rebase workflow is such that accidentally reordering the commits or otherwise bolloxing up the work is FAR TOO EASY.

      Here's a better workflow:

      Select a range of commits e.g. with mouse click.

      Popup menu -> "Squash N commits"

      done.

      /*****************************/

      After farting around some more with current squashing workflow, I find some VERY ANNOYING and seemingly stupid things:

      1. After a few "squash with previous" clicks, all of which seemed to take OK, I finish with the interactive sheet.
      2. I get some utterly obscure message "could not squash commit abc123....." . Fine, whatever.
      3. At this point the squash workflow is bolloxed up. I can't commit, I can't continue, I can't undo. Any action I take (if it has meaningful action) just pops up the same "could not squash commit abc123....".
      4. If I try another interactive rebase (BTW, the popup and main menu states at this point are OUT OF SYNC – one is live, the other is disabled), I get a somewhat less obscure message "hmmm, looks like you are in the middle of a rebase already, so I won't do anything, but you can 'rm -rf /path/to/.git/rebase/folder' and then try again".
      5. I don't have any obvious workflow that would force the squash or abort or fix it or ANYTHING.

      SO, here's how it should work.

      If I squash or attempt to squash a commit and git isn't going to like it, THEN YOU SHOULD BLOCK THE ACTION AND LET ME KNOW RIGHT AWAY, e.g. give me buttons like "OK, wrap up this squash" or "abort this squash" or "omit this commit from squash".

      If there is some obscure git reason that some commit is unacceptable, YOU SHOULD INCLUDE SOME MEANINGFUL INFO ABOUT WTF IS GOING ON, AND HOW TO GET AROUND IT, OR WHY IT'S A BAD THING TO DO, etc.

      more complaints later. I would like this workflow to work easily and smoothly.

      /*****************************/

      amending the above use case with one commit that git (or Sourcetree) doesn't like, in the midsts of several other commits that are (presumably) A-OK to squash.

      For commits

      {0 .. N-1}

      , N,

      {N+1 .. M}

      where N is the commit that causes grief, JUST SQUASH THE FIRST SET AND THE FINAL SET. LEAVE "N" IN PLACE UNSQUASHED.

            [SRCTREE-3046] Interactive rebase feature is VERY clunky.

            Katherine Yabut made changes -
            Workflow Original: JAC Suggestion Workflow [ 3371629 ] New: JAC Suggestion Workflow 3 [ 3671822 ]
            Status Original: RESOLVED [ 5 ] New: Closed [ 6 ]
            Monique Khairuliana (Inactive) made changes -
            Workflow Original: SourceTree Bug Workflow [ 857561 ] New: JAC Suggestion Workflow [ 3371629 ]
            Status Original: Open [ 1 ] New: Resolved [ 5 ]
            Monique Khairuliana (Inactive) made changes -
            Issue Type Original: New Feature [ 2 ] New: Suggestion [ 10000 ]
            Brian Ganninger (Inactive) made changes -
            Symptom Severity New: Minor [ 14432 ]
            ken lindsay made changes -
            Description Original: Interactive rebase workflow is such that accidentally reordering the commits or otherwise bolloxing up the work is FAR TOO EASY.

            Here's a better workflow:

            Select a range of commits e.g. with mouse click.

            Popup menu -> "Squash N commits"

            done.

            /*****************************/

            After farting around some more with current squashing workflow, I find some VERY ANNOYING and seemingly stupid things:

            1. After a few "squash with previous" clicks, all of which seemed to take OK, I finish with the interactive sheet.
            2. I get some utterly obscure message "could not squash commit abc123....." . Fine, whatever.
            3. At this point the squash workflow is bolloxed up. I can't commit, I can't continue, I can't undo. Any action I take (if it has meaningful action) just pops up the same "could not squash commit abc123....".
            4. If I try another interactive rebase (BTW, the popup and main menu states at this point are OUT OF SYNC -- one is live, the other is disabled), I get a somewhat less obscure message "hmmm, looks like you are in the middle of a rebase already, so I won't do anything, but you can 'rm -rf /path/to/.git/rebase/folder' and then try again".
            5. I don't have any obvious workflow that would force the squash or abort or fix it or ANYTHING.

            SO, here's how it should work.

            If I squash or attempt to squash a commit and git isn't going to like it, THEN YOU SHOULD BLOCK THE ACTION AND LET ME KNOW RIGHT AWAY, e.g. give me buttons like "OK, wrap up this squash" or "abort this squash" or "omit this commit from squash".

            If there is some obscure git reason that some commit is unacceptable, YOU SHOULD INCLUDE SOME MEANINGFUL INFO ABOUT WTF IS GOING ON, AND HOW TO GET AROUND IT, OR WHY IT'S A BAD THING TO DO, etc.

            more complaints later. I would like this workflow to work easily and smoothly.
            New: Interactive rebase workflow is such that accidentally reordering the commits or otherwise bolloxing up the work is FAR TOO EASY.

            Here's a better workflow:

            Select a range of commits e.g. with mouse click.

            Popup menu -> "Squash N commits"

            done.

            /*****************************/

            After farting around some more with current squashing workflow, I find some VERY ANNOYING and seemingly stupid things:

            1. After a few "squash with previous" clicks, all of which seemed to take OK, I finish with the interactive sheet.
            2. I get some utterly obscure message "could not squash commit abc123....." . Fine, whatever.
            3. At this point the squash workflow is bolloxed up. I can't commit, I can't continue, I can't undo. Any action I take (if it has meaningful action) just pops up the same "could not squash commit abc123....".
            4. If I try another interactive rebase (BTW, the popup and main menu states at this point are OUT OF SYNC -- one is live, the other is disabled), I get a somewhat less obscure message "hmmm, looks like you are in the middle of a rebase already, so I won't do anything, but you can 'rm -rf /path/to/.git/rebase/folder' and then try again".
            5. I don't have any obvious workflow that would force the squash or abort or fix it or ANYTHING.

            SO, here's how it should work.

            If I squash or attempt to squash a commit and git isn't going to like it, THEN YOU SHOULD BLOCK THE ACTION AND LET ME KNOW RIGHT AWAY, e.g. give me buttons like "OK, wrap up this squash" or "abort this squash" or "omit this commit from squash".

            If there is some obscure git reason that some commit is unacceptable, YOU SHOULD INCLUDE SOME MEANINGFUL INFO ABOUT WTF IS GOING ON, AND HOW TO GET AROUND IT, OR WHY IT'S A BAD THING TO DO, etc.

            more complaints later. I would like this workflow to work easily and smoothly.

            /*****************************/

            amending the above use case with one commit that git (or Sourcetree) doesn't like, in the midsts of several other commits that are (presumably) A-OK to squash.

            For commits {0 .. N-1}, N, {N+1 .. M} where N is the commit that causes grief, JUST SQUASH THE FIRST SET AND THE FINAL SET. LEAVE "N" IN PLACE UNSQUASHED.
            ken lindsay made changes -
            Description Original: Interactive rebase workflow is such that accidentally reordering the commits or otherwise bolloxing up the work is FAR TOO EASY.

            Here's a better workflow:

            Select a range of commits e.g. with mouse click.

            Popup menu -> "Squash N commits"

            done.
            New: Interactive rebase workflow is such that accidentally reordering the commits or otherwise bolloxing up the work is FAR TOO EASY.

            Here's a better workflow:

            Select a range of commits e.g. with mouse click.

            Popup menu -> "Squash N commits"

            done.

            /*****************************/

            After farting around some more with current squashing workflow, I find some VERY ANNOYING and seemingly stupid things:

            1. After a few "squash with previous" clicks, all of which seemed to take OK, I finish with the interactive sheet.
            2. I get some utterly obscure message "could not squash commit abc123....." . Fine, whatever.
            3. At this point the squash workflow is bolloxed up. I can't commit, I can't continue, I can't undo. Any action I take (if it has meaningful action) just pops up the same "could not squash commit abc123....".
            4. If I try another interactive rebase (BTW, the popup and main menu states at this point are OUT OF SYNC -- one is live, the other is disabled), I get a somewhat less obscure message "hmmm, looks like you are in the middle of a rebase already, so I won't do anything, but you can 'rm -rf /path/to/.git/rebase/folder' and then try again".
            5. I don't have any obvious workflow that would force the squash or abort or fix it or ANYTHING.

            SO, here's how it should work.

            If I squash or attempt to squash a commit and git isn't going to like it, THEN YOU SHOULD BLOCK THE ACTION AND LET ME KNOW RIGHT AWAY, e.g. give me buttons like "OK, wrap up this squash" or "abort this squash" or "omit this commit from squash".

            If there is some obscure git reason that some commit is unacceptable, YOU SHOULD INCLUDE SOME MEANINGFUL INFO ABOUT WTF IS GOING ON, AND HOW TO GET AROUND IT, OR WHY IT'S A BAD THING TO DO, etc.

            more complaints later. I would like this workflow to work easily and smoothly.
            ken lindsay created issue -

              Unassigned Unassigned
              2f76ab2525de ken lindsay
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: