mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Set HeadCommit when creating tags. (#18116)
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -72,13 +72,17 @@ func createTag(gitRepo *git.Repository, rel *models.Release, msg string) (bool,
 | 
				
			|||||||
			created = true
 | 
								created = true
 | 
				
			||||||
			rel.LowerTagName = strings.ToLower(rel.TagName)
 | 
								rel.LowerTagName = strings.ToLower(rel.TagName)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								commits := repository.NewPushCommits()
 | 
				
			||||||
 | 
								commits.HeadCommit = repository.CommitToPushCommit(commit)
 | 
				
			||||||
 | 
								commits.CompareURL = rel.Repo.ComposeCompareURL(git.EmptySHA, commit.ID.String())
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			notification.NotifyPushCommits(
 | 
								notification.NotifyPushCommits(
 | 
				
			||||||
				rel.Publisher, rel.Repo,
 | 
									rel.Publisher, rel.Repo,
 | 
				
			||||||
				&repository.PushUpdateOptions{
 | 
									&repository.PushUpdateOptions{
 | 
				
			||||||
					RefFullName: git.TagPrefix + rel.TagName,
 | 
										RefFullName: git.TagPrefix + rel.TagName,
 | 
				
			||||||
					OldCommitID: git.EmptySHA,
 | 
										OldCommitID: git.EmptySHA,
 | 
				
			||||||
					NewCommitID: commit.ID.String(),
 | 
										NewCommitID: commit.ID.String(),
 | 
				
			||||||
				}, repository.NewPushCommits())
 | 
									}, commits)
 | 
				
			||||||
			notification.NotifyCreateRef(rel.Publisher, rel.Repo, "tag", git.TagPrefix+rel.TagName)
 | 
								notification.NotifyCreateRef(rel.Publisher, rel.Repo, "tag", git.TagPrefix+rel.TagName)
 | 
				
			||||||
			rel.CreatedUnix = timeutil.TimeStampNow()
 | 
								rel.CreatedUnix = timeutil.TimeStampNow()
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -121,13 +121,22 @@ func pushUpdates(optsList []*repo_module.PushUpdateOptions) error {
 | 
				
			|||||||
				delTags = append(delTags, tagName)
 | 
									delTags = append(delTags, tagName)
 | 
				
			||||||
				notification.NotifyDeleteRef(pusher, repo, "tag", opts.RefFullName)
 | 
									notification.NotifyDeleteRef(pusher, repo, "tag", opts.RefFullName)
 | 
				
			||||||
			} else { // is new tag
 | 
								} else { // is new tag
 | 
				
			||||||
 | 
									newCommit, err := gitRepo.GetCommit(opts.NewCommitID)
 | 
				
			||||||
 | 
									if err != nil {
 | 
				
			||||||
 | 
										return fmt.Errorf("gitRepo.GetCommit: %v", err)
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									commits := repo_module.NewPushCommits()
 | 
				
			||||||
 | 
									commits.HeadCommit = repo_module.CommitToPushCommit(newCommit)
 | 
				
			||||||
 | 
									commits.CompareURL = repo.ComposeCompareURL(git.EmptySHA, opts.NewCommitID)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				notification.NotifyPushCommits(
 | 
									notification.NotifyPushCommits(
 | 
				
			||||||
					pusher, repo,
 | 
										pusher, repo,
 | 
				
			||||||
					&repo_module.PushUpdateOptions{
 | 
										&repo_module.PushUpdateOptions{
 | 
				
			||||||
						RefFullName: git.TagPrefix + tagName,
 | 
											RefFullName: git.TagPrefix + tagName,
 | 
				
			||||||
						OldCommitID: git.EmptySHA,
 | 
											OldCommitID: git.EmptySHA,
 | 
				
			||||||
						NewCommitID: opts.NewCommitID,
 | 
											NewCommitID: opts.NewCommitID,
 | 
				
			||||||
					}, repo_module.NewPushCommits())
 | 
										}, commits)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				addTags = append(addTags, tagName)
 | 
									addTags = append(addTags, tagName)
 | 
				
			||||||
				notification.NotifyCreateRef(pusher, repo, "tag", opts.RefFullName)
 | 
									notification.NotifyCreateRef(pusher, repo, "tag", opts.RefFullName)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user