svn - but smaller?
Stephen Montgomery-Smith
stephen at missouri.edu
Mon Jan 28 14:09:33 UTC 2013
On 01/28/2013 07:34 AM, Isaac (.ike) Levy wrote:
> On CTM,
>
> On Jan 27, 2013, at 10:54 PM, Stephen Montgomery-Smith wrote:
>> On 01/27/2013 09:24 PM, Isaac (.ike) Levy wrote:
>>> On Jan 24, 2013, at 6:13 AM, Peter Jeremy wrote:
>>>> On 2013-Jan-23 15:40:50 +0100, Oliver Brandmueller <ob at e-Gitt.NET> wrote:
>>>>> in ancient times there was cvsup.
>>>
>>> Thank you for adding the ctm bits in the page, I'm deeply intrigued by possibly solving this problem with bits *already* in base?!!
> ...
>>> - does CTM go away with the CVS servers?
>>> - do CTM-compatable patch/delta files exist on project repos?
>>> - what is the cleanest path to using CTM? (e.g. is the patch you mention required)
> ...
>>> Say I have a bare 9.1 install, no ports, haven't downloaded any base/src or ports yet.
>>> How do I go about using ctm(1) to fetch REL or STABLE to /usr/src, command by command?
>>
>> First, you don't need any patches to get started.
>>
>> Suppose you want to keep up with 9.x-stable. Then you look at the ftp
>> site ftp://ftp.freebsd.org/pub/FreeBSD/CTM/src-9/, look at the latest
>> xEmpty file, and fetch it. Then create an empty directory /usr/src, and
>> then do
>> cd /usr/src && ctm the-xEmpty-file-you-downloaded.
>> No need to decompress the file first.
>> Then fetch from the same web site all the files whose number is greater
>> than the xEmpty file you downloaded and do
>> cd /usr/src && ctm the-rest-of-the-files*
>>
>> Now in /usr/src, you will have a reasonably up to date version of
>> 9.x-stable.
>>
>> You can keep it up to date by getting more files, either from the ftp
>> site, or by email, and doing again
>> cd /usr/src && ctm the-rest-of-the-files*
>> It will automatically ignore the files already applied.
>>
>> Similar instructions for all the other stable/currents and ports. Main
>> thing to remember - start with an empty directory.
>>
>> Also making local changes is not permitted. If ctm tries to modify a
>> file whose md5 checksum has changed, it will quit with an error message.
>> (But it won't leave your system in an unusable state - if you put that
>> file back to its original state, then ctm will work again.)
>>
>> Now, if you want something not offered by ctm (e.g. 8.2-release), then
>> you need to use svn. You can get svn via ctm. But you (1) need to
>> apply the patch, (2) install the svn port, and (3) install the xz port
>> if your FreeBSD is really old.
>
> Thank you Stephen, ctm(1) is quite rad, but I see now how it doesn't really replace the 'one-liner' pull of c[v]sup…
>
> I updated the wiki page with an example from your notes,
> https://wiki.freebsd.org/UsersFetchingSource
>
> --
> With that, 2 questions:
>
> - I'm wondering if there is a clean/reliable way to pull an index of the CTM deltas? (This is still very far from the one-liner c[v]sup had become, it would be great to check for new delta files in a simple automated manner.)
>
Not sure what you mean. You can do "ctm -l file-name" and it will tell
you what files are modified in that delta. And for ports, you have the
usual "make fetchindex." But that is about it.
> - does CTM go away with the CVS servers, e.g. who/how is it supported supported and maintained going foreword under SVN?
>
No. CTM is now completely dependent on svn. I create the CTM deltas on
a computer owned by the University of Missouri.
More information about the freebsd-stable
mailing list