)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"cb3ab410fc4523568bcb1ca976d67bc998852cd7","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"81555acd_ab6107b1","updated":"2022-08-02 20:00:40.000000000","message":"I would say this is ok, because I don\u0027t think in this case I\u0027ve ever done anything but something ~ \"git rebase --abort; git fetch -a; git rebase -i origin/\u003cbranch, usually master\u003e\" and merged things directly like that.\n\nUnpacking those three commands for someone who a priori didn\u0027t know anything about git would probably take about a full day of tutorials and explanation about branches, rebases, staging commits, etc. :/ But I don\u0027t think that\u0027s really git-review\u0027s fault.\n\nIf you really don\u0027t know what\u0027s happening, resetting it so you can work your way through understanding the rebase process seems a good idea (at least you can follow tutorials, etc.).  If you do know what\u0027s happening, I imagine most like myself abort it and pull in changes manually anyway, because they want an up-to-date tree locally.  So ++ on the behaviour","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"f3e7764233960856da74d1e5242abf086dd4dc04","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"cf2a71e4_a2aa39f6","updated":"2022-08-01 22:59:42.000000000","message":"I\u0027m ok with this behavior change as a user since I almost always `git rebase --abort` in this situation myself. However, I think the reason to keep it may be if other users are less comfortable starting a new rebase by hand, but are comfortable completing the one that git review starts for you.","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"}],"git_review/cmd.py":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"0d6b166e85e1b220ee1edd2dafbe259e4d3826cf","unresolved":true,"context_lines":[{"line_number":987,"context_line":"        print(\"Errors running %s\" % cmd)"},{"line_number":988,"context_line":"        print(output)"},{"line_number":989,"context_line":"        return False"},{"line_number":990,"context_line":"    return True"},{"line_number":991,"context_line":""},{"line_number":992,"context_line":""},{"line_number":993,"context_line":"def undo_rebase():"}],"source_content_type":"text/x-python","patch_set":3,"id":"508381ea_4b8c2ca5","line":990,"updated":"2024-03-05 15:36:49.000000000","message":"Nit abort_rebase()\u0027s return values don\u0027t appear to be meaningful where used below. Could simplify this function to reflect that better by dropping these two explicit return values. But they also don\u0027t hurt anything.","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"f142c67505adc5c2c651e9f203827f9cb5f94d2d","unresolved":false,"context_lines":[{"line_number":987,"context_line":"        print(\"Errors running %s\" % cmd)"},{"line_number":988,"context_line":"        print(output)"},{"line_number":989,"context_line":"        return False"},{"line_number":990,"context_line":"    return True"},{"line_number":991,"context_line":""},{"line_number":992,"context_line":""},{"line_number":993,"context_line":"def undo_rebase():"}],"source_content_type":"text/x-python","patch_set":3,"id":"3ce9b918_5f005d19","line":990,"in_reply_to":"508381ea_4b8c2ca5","updated":"2024-03-05 22:01:44.000000000","message":"Done.","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"46c00535f6527bbd39122d6563d61f937feec313","unresolved":true,"context_lines":[{"line_number":973,"context_line":"                          \"conflict, but the result of the test rebase has \""},{"line_number":974,"context_line":"                          \"been discarded. You may rebase it yourself and \""},{"line_number":975,"context_line":"                          \"review again, or use \u0027git review -R\u0027 to upload the \""},{"line_number":976,"context_line":"                          \"change without resolving the conflict, or use the \""},{"line_number":977,"context_line":"                          \"--keep-rebase option to leave the incomplete \""},{"line_number":978,"context_line":"                          \"rebase result in your working tree.\")"},{"line_number":979,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":5,"id":"dea869bb_91a2fd75","line":976,"updated":"2024-03-05 21:41:20.000000000","message":"I could see some new users not fully understanding that a not-rebased change is unmergable. Perhaps updating it to indicate that changes with conflicts are generally not mergable might be beneficial?","commit_id":"29f598d554d4fa405f2c2a35dbe4933cfa9a2161"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"16d7d4628a6194c0957ca4a4ff7cbb04e4959f50","unresolved":false,"context_lines":[{"line_number":973,"context_line":"                          \"conflict, but the result of the test rebase has \""},{"line_number":974,"context_line":"                          \"been discarded. You may rebase it yourself and \""},{"line_number":975,"context_line":"                          \"review again, or use \u0027git review -R\u0027 to upload the \""},{"line_number":976,"context_line":"                          \"change without resolving the conflict, or use the \""},{"line_number":977,"context_line":"                          \"--keep-rebase option to leave the incomplete \""},{"line_number":978,"context_line":"                          \"rebase result in your working tree.\")"},{"line_number":979,"context_line":"        return False"}],"source_content_type":"text/x-python","patch_set":5,"id":"e85027d5_a5be5a0a","line":976,"in_reply_to":"dea869bb_91a2fd75","updated":"2024-03-05 22:01:52.000000000","message":"Done.","commit_id":"29f598d554d4fa405f2c2a35dbe4933cfa9a2161"}],"git_review/tests/test_git_review.py":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"0d6b166e85e1b220ee1edd2dafbe259e4d3826cf","unresolved":true,"context_lines":[{"line_number":329,"context_line":"                   \"-i remotes/%s/master\" % self._remote in exc.args[0])"},{"line_number":330,"context_line":"        self.assertTrue(rebased)"},{"line_number":331,"context_line":"        self.assertIn(\"It is likely that your change has a merge conflict\","},{"line_number":332,"context_line":"                      exc.args[0])"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    def test_upload_without_rebase(self):"},{"line_number":335,"context_line":"        \"\"\"Test change not needing a rebase can upload without rebasing.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"fbb7bb8f_3b881738","line":332,"updated":"2024-03-05 15:36:49.000000000","message":"Would be good to have this test check the git rebase state after running git review. Also adding a new test for the -K flag to check that the rebase is not aborted. Basically a new test that is a small variant of this existing test.","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"f142c67505adc5c2c651e9f203827f9cb5f94d2d","unresolved":false,"context_lines":[{"line_number":329,"context_line":"                   \"-i remotes/%s/master\" % self._remote in exc.args[0])"},{"line_number":330,"context_line":"        self.assertTrue(rebased)"},{"line_number":331,"context_line":"        self.assertIn(\"It is likely that your change has a merge conflict\","},{"line_number":332,"context_line":"                      exc.args[0])"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    def test_upload_without_rebase(self):"},{"line_number":335,"context_line":"        \"\"\"Test change not needing a rebase can upload without rebasing.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"455e0d15_b5d6106c","line":332,"in_reply_to":"fbb7bb8f_3b881738","updated":"2024-03-05 22:01:44.000000000","message":"Done.","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"f142c67505adc5c2c651e9f203827f9cb5f94d2d","unresolved":false,"context_lines":[{"line_number":329,"context_line":"                   \"-i remotes/%s/master\" % self._remote in exc.args[0])"},{"line_number":330,"context_line":"        self.assertTrue(rebased)"},{"line_number":331,"context_line":"        self.assertIn(\"It is likely that your change has a merge conflict\","},{"line_number":332,"context_line":"                      exc.args[0])"},{"line_number":333,"context_line":""},{"line_number":334,"context_line":"    def test_upload_without_rebase(self):"},{"line_number":335,"context_line":"        \"\"\"Test change not needing a rebase can upload without rebasing.\"\"\""}],"source_content_type":"text/x-python","patch_set":3,"id":"8f0f7ebe_fd43b0f6","line":332,"in_reply_to":"fbb7bb8f_3b881738","updated":"2024-03-05 22:01:44.000000000","message":"Done.","commit_id":"e54d324370187039eb3cc9899d480ab70be58714"}]}
