HomeSoftware Heritage

attempt to avoid content differences due to paths in keywords

Description

attempt to avoid content differences due to paths in keywords

Some RCS keywords, such has "Header", contain absolute file paths
derived from the on-disk filesystem path of the CVS repository.

When we fetch files over the pserver protocol such keywords are
expanded by the CVS server. But when using the rsync protocol we
will first copy the CVS repository to local disk and the path to
this local copy will correspond to some temporary directory.

Try to avoid file content differences between pserver and rsync
access methods by deriving a likely server-side path from path
information found in the rsync:// origin URL.
This will work as expected as long as the CVS server-side setup
exposes the same path to the CVS repository over both access
methods, which is the case for GNU savannah for example.

In general, we should recommend treating pserver and rsync as distinct
origins and not rely on them to be interchangable and always produce
the same conversion result. But we can still try our best to avoid
needless differences in content hashes.

Details

Provenance
stspAuthored on Nov 23 2021, 3:16 PM
stspPushed on Nov 29 2021, 2:36 PM
Differential Revision
D6678: attempt to avoid content differences due to paths in keywords
Parents
rDLDCVS1f6580c4c8e3: cvs.tasks: Fix type
Branches
Unknown
Tags
Unknown
Tasks
T3691: Implement CVS loader
Build Status
Buildable 25227
Build 39424: test-and-buildJenkins console · Jenkins