On Jun 16, 2014, at 9:20 PM, Jed Brown <[email protected]> wrote: > Barry Smith <[email protected]> writes: >>> Are you going to add the appropriate upstream workflow to all the >>> --download packages? This sounds intractable. >> >> I am not putting upstream workflow into any download packages. I am >> wanting to do something very simple, let —download-xxx replace me >> manually git clone xxxx; git checkout yyyy on some package. That is >> all. (Where yyy may be a branch or a commit-hash depending on the >> circumstances). > > It clones and checks out the commit. You can checkout the BRANCH > (branches are all about how the upstream package CHANGES) when you want > to contribute upstream (and you're entirely on your own to match up with > their workflow). Why is that not sufficient?
Since —download-xxx can already track a branch the only thing that is missing is managing merges from these branches into next and master so that things don’t break and don’t require people to remember “oh since I am tracking a moab branch I have to be really careful when I merge into next/master and manually fix things”. Ideally it would automatically switch from branch to commit-hash on such merges in xxx.py If that is not possible then it would print a useful message to the screen telling one to manually fix the xxx.py commit-hash to the appropriate value when I do the merge. Since you and Satish just go on and on about how this is a bad idea instead of just telling me how to make git do this I have to assume that git cannot do it and you guys are just trying to find rationalizations of why I would not want to do this rather than just admitting git cannot do it. So Can git do this or can it not? (And no rationalizations about why I shouldn’t want it to do it). How can we setup git do to do this: switch branch ids in xxx.py to commit-hashs when xxxx.py gets merged in next or master. Barry Note: of course if git cannot do it I could write a script to replace git merge (into next and master) that “fixed up” the xxxx.pys before merging and then called git merge but I prefer something that “just works” so it would “just work for any PETSc developer” and I wouldn’t need to run my special script.
