mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-03 21:16:26 +01:00 
			
		
		
		
	Sync branches first (#29714)
Follow #29493. Sync branches to DB first, then trigger push events.
This commit is contained in:
		
							parent
							
								
									4129e0e79b
								
							
						
					
					
						commit
						e6d141182f
					
				@ -82,19 +82,6 @@ func HookPostReceive(ctx *gitea_context.PrivateContext) {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if repo != nil && len(updates) > 0 {
 | 
			
		||||
		if err := repo_service.PushUpdates(updates); err != nil {
 | 
			
		||||
			log.Error("Failed to Update: %s/%s Total Updates: %d", ownerName, repoName, len(updates))
 | 
			
		||||
			for i, update := range updates {
 | 
			
		||||
				log.Error("Failed to Update: %s/%s Update: %d/%d: Branch: %s", ownerName, repoName, i, len(updates), update.RefFullName.BranchName())
 | 
			
		||||
			}
 | 
			
		||||
			log.Error("Failed to Update: %s/%s Error: %v", ownerName, repoName, err)
 | 
			
		||||
 | 
			
		||||
			ctx.JSON(http.StatusInternalServerError, private.HookPostReceiveResult{
 | 
			
		||||
				Err: fmt.Sprintf("Failed to Update: %s/%s Error: %v", ownerName, repoName, err),
 | 
			
		||||
			})
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		branchesToSync := make([]*repo_module.PushUpdateOptions, 0, len(updates))
 | 
			
		||||
		for _, update := range updates {
 | 
			
		||||
			if !update.RefFullName.IsBranch() {
 | 
			
		||||
@ -151,6 +138,19 @@ func HookPostReceive(ctx *gitea_context.PrivateContext) {
 | 
			
		||||
				return
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if err := repo_service.PushUpdates(updates); err != nil {
 | 
			
		||||
			log.Error("Failed to Update: %s/%s Total Updates: %d", ownerName, repoName, len(updates))
 | 
			
		||||
			for i, update := range updates {
 | 
			
		||||
				log.Error("Failed to Update: %s/%s Update: %d/%d: Branch: %s", ownerName, repoName, i, len(updates), update.RefFullName.BranchName())
 | 
			
		||||
			}
 | 
			
		||||
			log.Error("Failed to Update: %s/%s Error: %v", ownerName, repoName, err)
 | 
			
		||||
 | 
			
		||||
			ctx.JSON(http.StatusInternalServerError, private.HookPostReceiveResult{
 | 
			
		||||
				Err: fmt.Sprintf("Failed to Update: %s/%s Error: %v", ownerName, repoName, err),
 | 
			
		||||
			})
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Handle Push Options
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user