You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sillyguodong
2f49b55c19
Fix cannot reopen after pushing commits to a closed PR (#23189)
Close: #22784
1. On GH, we can reopen a PR which was closed before after pushing
commits. After reopening PR, we can see the commits that were pushed
after closing PR in the time line. So the case of
[issue](https://github.com/go-gitea/gitea/issues/22784) is a bug which
needs to be fixed.
2. After closing a PR and pushing commits, `headBranchSha` is not equal
to `sha`(which is the last commit ID string of reference). If the
judgement exists, the button of reopen will not display. So, skip the
judgement if the status of PR is closed.
![image](https://user-images.githubusercontent.com/33891828/222037529-651fccf9-0bba-433e-b2f0-79c17e0cc812.png)
3. Even if PR is already close, we should still insert comment record
into DB when we push commits.
So we should still call function `CreatePushPullComment()`.
067b0c2664/services/pull/pull.go (L260-L282)
So, I add a switch(`includeClosed`) to the
`GetUnmergedPullRequestsByHeadInfo` func to control whether the status
of PR must be open. In this case, by setting `includeClosed` to `true`,
we can query the closed PR.
![image](https://user-images.githubusercontent.com/33891828/222621045-bb80987c-10c5-4eac-aa0c-1fb9c6aefb51.png)
4. In the loop of comments, I use the`latestCloseCommentID` variable to
record the last occurrence of the close comment.
In the go template, if the status of PR is closed, the comments whose
type is `CommentTypePullRequestPush(29)` after `latestCloseCommentID`
won't be rendered.
![image](https://user-images.githubusercontent.com/33891828/222058913-c91cf3e3-819b-40c5-8015-654b31eeccff.png)
e.g.
1). The initial status of the PR is opened.
![image](https://user-images.githubusercontent.com/33891828/222453617-33c5093e-f712-4cd6-8489-9f87e2075869.png)
2). Then I click the button of `Close`. PR is closed now.
![image](https://user-images.githubusercontent.com/33891828/222453694-25c588a9-c121-4897-9ae5-0b13cf33d20b.png)
3). I try to push a commit to this PR, even though its current status is
closed.
![image](https://user-images.githubusercontent.com/33891828/222453916-361678fb-7321-410d-9e37-5a26e8095638.png)
But in comments list, this commit do not display.This is as expected :)
![image](https://user-images.githubusercontent.com/33891828/222454169-7617a791-78d2-404e-be5e-77d555f93313.png)
4). Click the `Reopen` button, the commit which is pushed after closing
PR display now.
![image](https://user-images.githubusercontent.com/33891828/222454533-897893b6-b96e-4701-b5cb-b1800f382b8f.png)
---------
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
|
1 year ago |
.. |
assignees.go
|
Improve utils of slices (#22379)
|
2 years ago |
assignees_test.go
|
refactor some functions to support ctx as first parameter (#21878)
|
2 years ago |
comment.go
|
Rename `repo.GetOwner` to `repo.LoadOwner` (#22967)
|
1 year ago |
comment_code.go
|
some refactor about code comments (#20821)
|
2 years ago |
comment_list.go
|
Implement actions (#21937)
|
2 years ago |
comment_test.go
|
Support importing comment types (#22510)
|
2 years ago |
content_history.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
content_history_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
dependency.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
dependency_test.go
|
refactor some functions to support ctx as first parameter (#21878)
|
2 years ago |
issue.go
|
Add "Reviewed by you" filter for pull requests (#22927)
|
1 year ago |
issue_index.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
issue_list.go
|
Implement actions (#21937)
|
2 years ago |
issue_list_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
issue_lock.go
|
Rename almost all Ctx functions (#22071)
|
2 years ago |
issue_project.go
|
Improve issues.LoadProject (#22982)
|
1 year ago |
issue_test.go
|
Scoped labels (#22585)
|
1 year ago |
issue_user.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
issue_user_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
issue_watch.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
issue_watch_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
issue_xref.go
|
Fix more HTMLURL in templates (#22831)
|
1 year ago |
issue_xref_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
label.go
|
Add loading yaml label template files (#22976)
|
1 year ago |
label_test.go
|
Add loading yaml label template files (#22976)
|
1 year ago |
main_test.go
|
Refactor the setting to make unit test easier (#22405)
|
1 year ago |
milestone.go
|
refactor some functions to support ctx as first parameter (#21878)
|
2 years ago |
milestone_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
pull.go
|
Rename `repo.GetOwner` to `repo.LoadOwner` (#22967)
|
1 year ago |
pull_list.go
|
Fix cannot reopen after pushing commits to a closed PR (#23189)
|
1 year ago |
pull_test.go
|
Fix cannot reopen after pushing commits to a closed PR (#23189)
|
1 year ago |
reaction.go
|
refactor some functions to support ctx as first parameter (#21878)
|
2 years ago |
reaction_test.go
|
Implement FSFE REUSE for golang files (#21840)
|
2 years ago |
review.go
|
Implement actions (#21937)
|
2 years ago |
review_test.go
|
Restore previous official review when an official review is deleted (#22449)
|
2 years ago |
stopwatch.go
|
Speed up HasUserStopwatch & GetActiveStopwatch (#23051)
|
1 year ago |
stopwatch_test.go
|
Speed up HasUserStopwatch & GetActiveStopwatch (#23051)
|
1 year ago |
tracked_time.go
|
Rename almost all Ctx functions (#22071)
|
2 years ago |
tracked_time_test.go
|
refactor some functions to support ctx as first parameter (#21878)
|
2 years ago |