merged branch meonkeys/2.0 (PR #232)
merged branch meonkeys/2.0 (PR #232)

Commits
-------

29dd189 bin/vendors: break if a bundle has local modifications

Discussion
----------

bin/vendors: break if a bundle has local modifications

I'm often developing several Symfony2 bundles at once. I have them all
set up as deps for a single Symfony2 application, and I point Netbeans
at the base of the Symfony2 directory.

Since each [sub]dir in vendor/ is a complete git repository, after
making a bunch of changes I can then dive into each dir and commit/push
as necessary.

If I accidentally run "bin/vendors install" while I have un-pushed
changes, they're blown away by the "git reset --hard" in bin/vendors.
This patch proposes to make the script more cautious, assuming that
local modifications should never be blown away. Note that "--force" is
unimplemented, this is just one idea.

Also see my recent post about same to the symfony-devs mailing list.

---------------------------------------------------------------------------

by Problematic at 2011/11/11 12:33:11 -0800

I'm -1 on this; I feel like bin/vendors should never contain user modifications, and so I WANT any changes that have crept in to be blown away. Any time I've been tempted to write hacky code as a shortcut, this deters me and forces me to find a cleaner way to handle things :)

In development, I usually point the autoloader to a local path on my machine where I'm making changes (you can even pass it an array if you have some production bundles and some in development within the same namespace, though you have to be careful with this because odd things can and do happen). Then I can easily isolate my work (into a new Netbeans project, for example), commit at will, and not be at risk of losing work from a rogue `php bin/vendors install` call.

---------------------------------------------------------------------------

by meonkeys at 2011/11/11 20:23:29 -0800

I like your autoloader suggestion! I'll give that a shot.

---------------------------------------------------------------------------

by meonkeys at 2011/11/17 13:03:45 -0800

See also: <https://groups.google.com/d/msg/symfony-devs/bd8uu5khdeI/kFCuexhibfIJ>

webignition/worker.simplytestable.com,foopro/symfony-screenfony,shamcode/symfony-testing,ovelasquez/ussi,uttam-vi/pardawala,delorenj/elleol_legacy,aprezcuba24/symfony-standard,oustaban/eurotax,mayflower/sf2hackday,apnet/symfony-standard-edition,stof/symfony-standard,markitosgv/DevOps,webignition/worker.simplytestable.com,SymfonyId/api-platform,tederkkila/snapshot_server,dantleech/symfony-doctrine-phpcr-edition,chregu/symfony-standard,Koc/symfony-standard,adrienbrault/symfony-silex-edition,shcloudservices/agiletourreg,chebetos/SymfonyTest,beyondkeysystem/psc-symfony-angularjs,havvg/symfony-propel-edition,ewgRa/symfony-standard,jmather/pagoda-symfony-sonata-distribution,bocharsky-bw/symfony-standard,joferzs/firewall,kmelia/fresh-symfony,tederkkila/snapshot_server,Tobion/symfony-standard,yohang/non-obstrusive-form-sf2,simonjcarr/symfony_rest,trycatch-au/Informative-Workspaces,2085020/first-symfony-project,NoUseFreak/StandardEdition,umpirsky/symfony-standard,vincentchalamon/phpunit-bridge,ucay/Skeleton,xiaobudongzhang/symfony-standard,alihalabyah/symfony-rest-edition,mayflower/sf2hackday,baukaman/NeedYou,JMSBot/CSBill,tristanbes/symfony-standard,tomat/symfony-standard,zeopix/Templating-Workshop,hrisproject/hris,micha149/wedding-page,ucay/Skeleton,kmelia/fresh-symfony,flyboarder/AirOS,zanderbaldwin/symfony-layers,mkrauser/symfony-dump-demo,FLM/uberstrap,b00giZm/symfony-boilerplate-app,tiagobrito/ds1.sfdaypt14,Clastic/StandardEdition,platformsh/platformsh-example-symfony,SymfonyId/Skeleton,unewochialat/symfony-standard,lanthaler/sfHydraDemoApp,Thiktak/Jordo,marcoleong/MacauSE,GulDmitry/music-diff,tdd-php/football,foopro/symfony-screenfony,phiamo/symfony-bootstrap,by-examples/symfony-standard,apnet/symfony-standard-edition,freecastle/Symfony2_Boilerplate,gencer/symfony-standard,gimler/symfony-rest-edition,jakzal/symfony-standard,dziamid/lunch-time-composer,basdek/SymfonyFireWall,Spea/symfony-standard,reidel/hobby-1,0mars/symfony-standard-issue-13291,micha149/wedding-page,jmather/pagoda-symfony-sonata-distribution,platformsh/platformsh-example-symfony,orodsem/trout,jmather/symfony-sonata-distribution,LogTweets/logtweets,b00giZm/symfony-boilerplate-app,gencer/CustomRouterExample,RuntyCybin/symfony-standard,dziamid/lunch-time-composer,fahadonline/sulu,mqmtech/show-app,Cartesia/01,mweimerskirch/symfony-standard,AlexeyKupershtokh/symfony-standard,buddhikajay/symfony-sonata-distribution,GulDmitry/music-diff,cordoval/symfony-gae,tarasinio/weather-remainder.com,webignition/simplytestable.com,irro/MastoAlliance,mykehsd/jobeet,phiamo/symfony-bootstrap,SymfonyId/Skeleton,hrisproject/hris,bamarni/symfony-docker,mikekamornikov/remmart.ru,jakzal/symfony-standard,MatthieuCutin/ligue-squash,black-project/black-standard,rommsen/plesynd,continuousphp/symfony-skeleton,trsteel88/symfony-standard,mukulu/hris,the-software-factory/superhero-api,tiagobrito/ds1.sfdaypt14,debruyne0/symfony,merk/comment-server,ericclemmons/ericclemmons.github.io,trsteel88/symfony-standard,VolCh/test-rethis.ru,InkApplications/barenaked-symfony,bshaffer/symfony-standard,dunglas/symfony-standard,marcoleong/musictube,b00giZm/symfony-boilerplate-app,cordoval/symfony-bootstrap,lsmith77/symfony-standard,kosintwong/symfony_test,yhoiseth/notelite.net,JMSBot/CSBill,rainbowcode/spanvoice-standard,mattvaadi/hris,pjcdawkins/tmp-symfony-demo,checat/symfony-minimal,makasim/LiipImagineBundleSandbox,webignition/app.simplytestable.com,WouterJ/symfony-standard,symfony2-od-podstaw/knp-menu-example,tPl0ch/symfony-phpqatools,fabpot/symfony-standard,vincentaubert/symfony-standard,buddhika-jay/symfony-sonata-distribution,VolCh/test-rethis.ru,Clastic/StandardEdition,tarasinio/weather-remainder.com,oustaban/eurotax,Thiktak/Jordo,glavweb/symfony-standard,gencer/symfony-standard,webignition/simplytestable.com,jbdelhommeau/symfony-standard,flyboarder/AirOS,LogTweets/logtweets,trycatch-au/Informative-Workspaces,yhoiseth/notelite.net,havvg/symfony-standard-propel,Metabor/Start-App,drufony/drufony,fabpot/symfony-standard,chebetos/SymfonyTest,tdd-php/literatura,UxorialRook/symfony-standard,propelorm/symfony-propel-edition,NoUseFreak/StandardEdition,merk/comment-server,Musak/firstsymfony2project,taylankasap/symfony-standard,webignition/worker.simplytestable.com,lyrixx/symfony-rest-edition,phiamo/symfony-bootstrap,rommsen/plesynd,debruyne0/symfony,Cartesia/01,mattvaadi/hris,ctrl-f5/symfony-standard,ovelasquez/ussi,HasClass0/standard-edition,hrisproject/hris,chebetos/SymfonyTest,zanderbaldwin/symfony-layers,phiamo/symfony-bootstrap,fahadonline/sulu,theodo/theodo-kata,yohang/non-obstrusive-form-sf2,outlandishideas/symfony-standard,gimler/symfony-rest-edition,vincentchalamon/phpunit-bridge,IgorTimoshenko/symfony-standard-requirejs,kmelia/fresh-symfony,locastic/psc-symfony-angularjs,kucherevskyA/kucherevskiy-test-task,achrafYne/restaurants-guide,dunglas/symfony-standard,trycatch-au/Informative-Workspaces,Spea/symfony-standard,Baachi/symfony-standard,buddhika-jay/symfony-sonata-distribution,chrisciampoli/cleats,isidromerayo/symfony2-jobeet,gnugat-legacy/symfony-empty,lukaszgi/operowo,den2134/itdTest,phospr/symfony-starter,yelmontaser/symfony-standard,aerrasti/iemedebe,orodsem/trout,Soullivaneuh/symfony-standard,fcerezo/famaluz,amalv/cupon,continuousphp/symfony-skeleton,benja-M-1/rogercms-sandbox,javiereguiluz/symfony-standard,fahadonline/sulu,mukulu/hris,isidromerayo/symfony2-jobeet,bshaffer/symfony-standard,black-project/black-standard,glavweb/symfony-standard,webignition/app.simplytestable.com,majisti/symfony-standard,shcloudservices/agiletourreg,tarasinio/weather-remainder.com,den2134/itdTest,tdd-php/angaze,amalv/cupon,singingstars/flydb,formapro-forks/api-basic,xabbuh/symfony-standard,damedia/culture.ru,ucsf-ckm/symfony-emberjs-edition,skafandri/blog,wachterjohannes/sulu-standard,symfony/symfony-standard,damedia/culture.ru,NoUseFreak/StandardEdition,proteichik/testApp,myroshnychenko/SymfonyCMF,theodo/theodo-kata,yohang/non-obstrusive-form-sf2,unewochialat/symfony-standard,Thiktak/Jordo,pocit/ExpoApiBundle,dziamid/lunch-time-composer,VolCh/test-rethis.ru,tarasinio/weather-remainder.com,mattvaadi/hris,tdd-php/literatura,srosato/kata-bowling,lukaszgi/operowo,Clastic/StandardEdition,marcoleong/MacauSE,joferzs/firewall,mnapoli/symfony-standard,lyrixx/symfony-standard,flevour/symfony-issue-3889,ericclemmons/ericclemmons.github.io,ybutb/videotask,JMSBot/CSBill,trycatch-au/Informative-Workspaces,mqmtech/shop-app,merk/Citadel,wachterjohannes/sulu-standard,sulu-io/sulu-standard,cordoval/spike-edition,fcerezo/famaluz,GulDmitry/music-diff,martinmike2/website-study,lmaslowski/sf2,stof/symfony-standard,continuousphp/symfony-skeleton,peterkokot/symfony-standard,cordoval/symfony-gae,blogsh/SymfonyAuthenticationTest,ucsf-ckm/symfony-emberjs-edition,symfony/symfony-standard,csarrazi/AppKernelGenerator,underq/symfony-rest-edition-experiment,tdd-php/angaze,WouterJ/symfony-standard,LogTweets/logtweets,pjcdawkins/tmp-symfony-demo,symfony-cmf/standard-edition,meonkeys/symfony2-dual-auth,dkarvounaris/symfony-standard,spolischook/standard-edition,freecastle/Symfony2_Boilerplate,aerrasti/iemedebe,proteichik/testApp,Chill-project/Standard,phiamo/symfony-bootstrap,cordoval/symfony-gae,ewgRa/symfony-standard,tdd-php/angaze,javiereguiluz/symfony-standard,rajkamalganeshvivid/symfony-standard,cordoval/symfony-bootstrap,dkarvounaris/symfony-standard,havvg/symfony-standard-propel,we-bridge/symfony-admin,basdek/SymfonyFireWall,vincentaubert/symfony-standard,xiaobudongzhang/symfony-standard,bionic-university/alexander-pobereznichenko,shcloudservices/agiletourreg,srosato/kata-bowling,mqmtech/show-app,micha149/wedding-page,OskarStark/symfony-standard,mykehsd/jobeet,liip-forks/symfony-standard,mukulu/hris,bocharsky-bw/symfony-standard,mukulu/hris,Rvanlaak/symfony-standard,zeopix/Gaming,Musak/firstsymfony2project,damedia/culture.ru,rajkamalganeshvivid/symfony-standard,havvg/symfony-propel-edition,papaavola/symfony-standard,ctrl-f5/symfony-standard,propelorm/symfony-propel-edition,lukaszgi/operowo,meonkeys/symfony2-dual-auth,mayeco/symfony-standard-pagodabox,OskarStark/symfony-standard,joferzs/firewall,formapro-forks/api-basic,wachterjohannes/sulu-standard,symfony2-od-podstaw/26-01-sf21,sebhoerl/SymfonyAuthenticationTest,JMSBot/CSBill,webmozart/symfony-standard,IgorTimoshenko/symfony-standard-requirejs,WolfMicrosystems/symfony-wms,ybutb/videotask,Knouki/Jobeet-Symfony,cordoval/symfony-bootstrap,tdd-php/angaze,irro/MastoAlliance,papaavola/symfony-standard,elcodi/symfonycon-demo,symfony-cmf/standard-edition,uttam-vi/pardawala,jbdelhommeau/symfony-standard,continuousphp/symfony-skeleton,buddhikajay/symfony-sonata-distribution,taylankasap/symfony-standard,skafandri/blog,shadowtje1990/symfony_todo_api,Chill-project/Standard,fahadonline/sulu,mattvaadi/hris,egeloen/symfony-standard,lyrixx/symfony-standard,spolischook/standard-edition,chebetos/SymfonyTest,liip-forks/symfony-standard,mhlavac/symfony-skeleton,npotier/sf2Showcase,Soullivaneuh/symfony-standard,delorenj/elleol_legacy,HumanBooster/Symfony,oustaban/eurotax,zeopix/Gaming,gnugat/symfony-empty,AlexeyKupershtokh/symfony-standard,umpirsky/symfony-standard,trycatch-au/Informative-Workspaces,hrisproject/hris,webignition/worker.simplytestable.com,Cartesia/01,twisted-socket/stage-plots,MatthieuCutin/ligue-squash,RuntyCybin/symfony-standard,phospr/symfony-starter,the-software-factory/superhero-api,damedia/culture.ru,shadowtje1990/symfony_todo_api,sulu-io/sulu-standard,zeopix/Eventos,baukaman/NeedYou,cordoval/demo-symfony2-argentina,tdd-php/football,damienalexandre/symfony-standard,shamcode/symfony-testing,Tobion/symfony-standard,flevour/symfony-issue-3889,oustaban/eurotax,sebhoerl/CustomRouterExample,marcoleong/musictube,apnet/symfony-standard-edition,mweimerskirch/symfony-standard,cordoval/phpspec-symfony-sandbox,phiamo/symfony-bootstrap,fduch/symfony-standard-workflow,uttam-vi/pardawala,JMSBot/CSBill,blogsh/CustomRouterExample,fduch/symfony-standard-workflow,webignition/worker.simplytestable.com,cordoval/symfony-bootstrap,ucay/Skeleton,sulu-io/sulu-standard,sandello-alkr/symfony,yelmontaser/symfony-standard,egeloen/symfony-standard,hrisproject/hris,zeopix/Eventos,tristanbes/symfony-standard,webignition/simplytestable.com,alihalabyah/symfony-rest-edition,damedia/culture.ru,beyondkeysystem/psc-symfony-angularjs,WolfMicrosystems/symfony-wms,UxorialRook/symfony-standard,orodsem/trout,Baachi/symfony-standard,bamarni/symfony-docker,GulDmitry/music-diff,simonjcarr/symfony_rest,ovelasquez/ussi,meonkeys/symfony2-talk,HasClass0/standard-edition,zeopix/Templating-Workshop,1ed/symfony-standard,twisted-socket/stage-plots,merk/Citadel,Ocramius/symfony-standard,fcerezo/famaluz