Occasionally the development branch should be reset to the same content as master (well, mostly the same content).
!!! You must get sign-off from all bmo devs before taking this action, as it may destroy work-in-progess. !!!
Here's the procedure that has been used so far. Improvements to this are welcome!
Have yourself a checkout of bmo: ssh://email@example.com/webtools/bmo/bugzilla.git
We want development to just be a copy master, so we merge using the 'ours' strategy. This is different than a recursive-theirs strategy and is a little weird.
Make a local branch off master. This branch will never be pushed to remote, so the name is really not important. I usually call it new-dev. From this branch, we will merge using "ours" and then cherry-pick the non-permissive robots.txt. We can then pull new-dev into development and push development up to the central repository.
$ git checkout -b new-dev $ git merge -s ours development # for the commit description, use "reset development to master" rather than the more confusing default merge message $ git cherry-pick 77535a6 # may require another merge. $ git co development $ git pull . new-dev $ git push