Opened 13 years ago
Last modified 9 years ago
#717 new defect
update docs for svn:checkout
Reported by: | srl@… | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 0.6.2 |
Component: | General | Version: | 0.6 |
Keywords: | Cc: | ||
Operating System: |
Description
wiki/Documentation/commands.html
shared_path could be clarified a bit here, perhaps it could note that bitten will (1) create this dir if it doesn't exist, (2) checkout or update this dir to the specified version and finally (3) copy this dir to the build workspace.
Also note that shared_path should uniquely identify the repository - so a better suggestion might be "../trunk-myrecipe".
This is a very helpful feature.
Attachments (0)
Change History (2)
comment:1 follow-up: ↓ 2 Changed 9 years ago by surak@…
comment:2 in reply to: ↑ 1 Changed 9 years ago by srl@…
Replying to surak@…:
I still don't get how it works or why.
Consider this snippet:
<svn:checkout url="http://example.com/repos/surak/trunk" path="${path}" revision="${revision}" />
*every single time* this runs, it will
- check out an entirely new copy of http://example.com/repos/surak/trunk into the build workspace
.. even if the revision number only changed slightly, or not at all.
Now consider this improved version:
<svn:checkout url="http://example.com/repos/surak/trunk" shared_path="../surak-shared" path="${path}" revision="${revision}" />
This will do the following:
- Check if ../surak-shared exists, if so copy it into the build workspace. If not, checkout http://example.com/repos/surak/trunk to ../surak-shared
- Copy ../surak-shared into your build workspace, updated the the appropriate path and revision number.
Do you see the difference? You get only an svn update instead of a full svn checkout.
Also See my ticket:843 for a patch to delete and start over if the shared checkout fails for some reason.
I still don't get how it works or why.