I had some weird thing working with git. While I was testing, my master branch seems to be off from the develop branch.
I tested and development branch seems to be good state. When I checkout back to master branch, nothing seems to work how it suppose to. Why is this? I just can't check all files each and compare with the working ones?
Suddenly I got genius idea. How about saving the best current state then go back to master branch and copy from the Save State? I don't mean about Git stash. About zipping the directory while excluding
.git directory and
node_modules from the
develop good state branch, then set to
master branch and extract it. Then check with git status and commit changes. Boom!
master is in sync with
I don’t know why git do this, but perhaps I was running old version on my Mac. It was git version 2.4.9. And now it suppose to be 2.7.0.
Time for upgrade that is.
How did you fix your problem?
Let's say I show you the path of my git repository directory.
And my git is inside that directory, like so:
First I go the branch that seems the best files and best state, for me it's
git checkout develop
I can with confidence make an exact clone for this with:
So I go to my sub directory
And I do the compressing with
tar -cvzpf develop-branch.tar.gz --exclude='myproject/.git' --exclude='myproject/node_modules' myproject
See I use
.gitdirectory. This is very important.
You just make a Save Point! YEAH!
then head to:
and set to weird branch;
git checkout master
and go back to the sub directory
tar -xvzpf develop-branch.tar.gz
and go back to your project directory:
and check your status
BAM.. weird changes that should be there!
Add the files and Commit it and call it a day!
git add . git commit -avm "Everything is in sync!!!"
And now back to sleep!