Search code examples
gitrepositorycheckin

git repo says it's up-to-date after pull but files are not updated


I have 3 repos. A bare repo which I use as a master repo, a dev repo in which I make and test changes, and prod repo from which scripts are executed in the prod environment.

After I have tested changes in the dev repo I push them to the bare repo and they are auto pulled down into the prod repo on a cronjob using a basic script (carrying out git pull command).

I followed through the above procedure for a change, but the altered file will not update in the prod repo.

  • The change is checked in and pushed in the dev repo
  • The pull has been done to the prod repo
  • The git logs for all repos are identical and all show the checkin for this change
  • git branch gives me "* master" for all repos
  • git status for all repos gives me: # On branch master nothing to commit, working directory clean
  • git pull gives me "Already up-to-date" for the dev & prod repos

Using git extensions for a graphical view, it appears each repo is up to date and at the head.

I've tried:

git checkout HEAD  
git pull origin master  
git reset --hard HEAD  
git reset --hard origin/master  
git reset origin/master  

Can anyone help here?


Solution

  • Try this:

     git fetch --all
     git reset --hard origin/master
    

    Explanation:

    git fetch downloads the latest from remote without trying to merge or rebase anything.