X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=README;h=b99b03680fb7fced0e1dc2f0e699f73b141745f5;hb=67921ef309b025a2fea1c2311f93566ba2807b57;hp=514f3ed45c25ce696f35f5b9eb7708aa3263b638;hpb=93f96bf4e70062d1e4ad9c012c838c13ef1db37b;p=topgit.git diff --git a/README b/README index 514f3ed..b99b036 100644 --- a/README +++ b/README @@ -184,6 +184,24 @@ SYNOPSIS tg: Updating base with t/gitweb/nifty-links changes... tg: Updating t/whatever against new base... + ## Clone a TopGit-controlled repository + $ git clone URL repo + $ cd repo + $ tg remote --populate origin + ... + $ git fetch + $ tg update + + ## Add a TopGit remote to a repository and push to it + $ git remote add foo URL + $ tg remote foo + $ git push foo + + ## Update from a non-default TopGit remote + $ git fetch foo + $ tg -r foo summary + $ tg -r foo update + USAGE ----- @@ -215,6 +233,10 @@ tg create it will detect that you are on a topic branch base ref and resume the topic branch creation operation. + In an alternative use case, if '-r BRANCH' is given instead + of dependency list, the topic branch is created based on + the given remote branch. + tg delete ~~~~~~~~~ Remove a TopGit-controlled topic branch of given name @@ -353,11 +375,14 @@ tg export done - this would allow producing conflict-less series tg import -~~~~~~~~ - Import the commits between the given revision range into - a topgit managed branch +~~~~~~~~~ + Import commits within the given revision range into TopGit, + creating one topic branch per commit, the dependencies forming + a linear sequence starting on your current branch. - Usage: tg import rev1..rev2 + The branch names are auto-guessed from the commit messages + and prefixed by t/ by default; use '-p PREFIX' to specify + an alternative prefix (even an empty one). tg update ~~~~~~~~~ @@ -371,10 +396,15 @@ tg update In case your dependencies are not up-to-date, tg update will first recurse into them and update these. + If a remote branch update brings dependencies on branches + not yet instantiated locally, you can either bring in all + the new branches from the remote using 'tg remote --populate' + or only pick out the missing ones using 'tg create -r' + ('tg summary' will point out branches with incomplete + dependencies by showing an '!' near to them). + TODO: tg update -a for updating all topic branches -TODO: Some infrastructure for sharing topic branches between - repositories easily TODO: tg depend for adding/removing dependencies smoothly TODO: tg rename