Rewriting history and public-private-ish branches
I frequently conflate git-as-version-control with git-as-deployer when I'm editing on my Mac but testing on a server. I'll do things like...
Mac: checkout -b origin/topic-branch
Mac: make a major change, commit and push
server: pull
[do while buggy]
server: discover a typo
Mac: fix the typo, commit and push
server: pull
[end]
Mac: squash commits
Mac: checkout master
Mac: merge topic-branch
Mac: branch -d topic-branch
Mac: push origin :topic-branch
As long as I'm the only one who's seen this "published" history, am I doing anything bad? Do I leave any residue behind in the repo?
Jay Levitt
Jay Levitt:
Quoted 1 line
As long as I'm the only one who's seen this "published" history, am I doing anything bad?
I do things like that too, and as long as you know what you are doing, it usually works fine.
Quoted 1 line
Do I leave any residue behind in the repo?
As long as you run "git gc" on the repos regularly, it shouldn't really matter much. Your abandoned changes will be available through the reflog until that expires, and when that has happened "git gc" should remove them from the repositories altogether.
Signature · 1 line
\\// Peter - http://www.softwolves.pp.se/