{"thread":{"id":"26873","subject":"ANNOUNCE gitslave-2.0.1","startedAt":"2011-03-26T15:18:25Z","lastAt":"2011-03-26T15:18:25Z","messageCount":1,"participants":["Seth Robertson"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"164364","messageId":"201103261518.p2QFIPLJ020427@no.baka.org","threadId":"26873","inReplyTo":null,"subject":"ANNOUNCE gitslave-2.0.1","fromName":"Seth Robertson","fromEmail":"in-gitvger@baka.org","sentAt":"2011-03-26T15:18:25Z","receivedAt":"2011-03-26T15:18:25Z","isPatch":false,"sender":{"key":"in-gitvger@baka.org","avatar":null},"body":"\nGitslave http://gitslave.sf.net creates a group of related\nrepositoriesâa superproject repository and a number of slave\nrepositoriesâall of which are concurrently developed on and on which\nall git operations should normally operate; so when you branch, each\nrepository in the project is branched in turn. Similarly when you\ncommit, push, pull, merge, tag, checkout, status, log, etc; each git\ncommand will run on the superproject and all slave repositories in\nturn. This sort of activity may be very familiar to CVS and (to a\nlesser extent) Subversion users. Gitslave's design is for simplicity\nfor normal git operations.\n\nGitslave is an alternative to git-submodules: easier to use and better\nfor some (but not all) workflows.\n\nWhen you have a problem which calls for easy multirepository\nmanagement without lots of synchronization, where you typically might\nwant to run the same git command over every repository in your\nproject, gitslave is the solution for you.\n\nRelease note highlights since last announcement, see release notes at\nhttp://gitslave.sf.net for more details.\n----------------------------------------------------------------------\n* Now supports git+ssh:// and host:repo style GRLs\n\nTraditionally gitslave has only supported /path/to/repo and URL\n(ssh://host/path/to/repo) style Git Resource Locators.  Gitslave has\nnow been taught about the alternate reference styles.\n\n\n* gits now has pager support\n\ngits will use less, $PAGER, and $GIT_PAGER hopefully similar to how\nnative git uses pagers for output.\n\n\n* gits will not clean directories with .git in them\n\nReplicating recent git functionality, `gits clean -dfx` will not\ndestroy repositories.  This helps the situation where different\nbranches have different slave modules attached.\n\n\n* Recursive subprojects\n\nWith the use of `gits attach --recursive=.gitslave URL DIRECTORY`\ngitslave now fully support recursive subprojects (or slaves which are\nthemselves gitslave masters of yet more slaves).\n\n\n* gitslave tutorial created\n\nA tutorial was created which walks the reader through a from-scratch\nrepository creation using the most popular and needed git commands in\nthe multi-repository gitslave environment.  The tutorial and overall\ngitslave website is now stored as part of gitslave.\n\n\n* gits pulls more efficient and safer.\n\nGits pulls perform a pull on all available local branches.  This now should\nperform only one fetch (in most cases).  Also --rebase is safer by\nusing --preserve-merges (in most cases).\n\n\n* gits now implements paginated output by default, just like git\n\nPagination is only enabled if standard output is a tty (and there is a\ncontrolling tty for the pager to take input from).  If you do not want\npaginated output, the -n or --no-pager option disables it.  All the git\npager configuration settings (GIT_PAGER and PAGER environment variables,\nand core.pager configuration setting) are honored.\n\n\n* gits populate can now request population of specific ifpresent modules\n\n* gits clone now supported for easy project cloning\n\n* gits detach now supported for easier project maintenance\n----------------------------------------------------------------------\n\n\t\t\t\t\t-Seth Robertson\n"}]}