Last active
          October 13, 2025 02:29 
        
      - 
            
      
        
      
    Star
      
          
          (150)
      
  
You must be signed in to star a gist  - 
              
      
        
      
    Fork
      
          
          (52)
      
  
You must be signed in to fork a gist  
- 
      
 - 
        
Save lemiorhan/8912188 to your computer and use it in GitHub Desktop.  
    Post-receive hook to deploy the code being pushed to production branch to a specific folder
  
        
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | #!/bin/bash | |
| target_branch="production" | |
| working_tree="PATH_TO_DEPLOY" | |
| while read oldrev newrev refname | |
| do | |
| branch=$(git rev-parse --symbolic --abbrev-ref $refname) | |
| if [ -n "$branch" ] && [ "$target_branch" == "$branch" ]; then | |
| GIT_WORK_TREE=$working_tree git checkout $target_branch -f | |
| NOW=$(date +"%Y%m%d-%H%M") | |
| git tag release_$NOW $target_branch | |
| echo " /===============================" | |
| echo " | DEPLOYMENT COMPLETED" | |
| echo " | Target branch: $target_branch" | |
| echo " | Target folder: $working_tree" | |
| echo " | Tag name : release_$NOW" | |
| echo " \==============================" | |
| fi | |
| done | 
Unfortunatelly it doesn't work on Bitbucket =/
I love the idea of this post-receive sample versus the standard push to master or main branch... Thanks I am trying it now!
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment
  
            
Lovely, I event added second if condition to push my
developmentbranch to different directory 💃