[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-gnu-arch] [bug #5644] tla get --hardlinks
From: |
nobody |
Subject: |
[Bug-gnu-arch] [bug #5644] tla get --hardlinks |
Date: |
Thu, 02 Oct 2003 02:20:46 -0400 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5a) Gecko/20030922 Mozilla Firebird/0.6.1 |
=================== BUG #5644: LATEST MODIFICATIONS ==================
http://savannah.gnu.org/bugs/?func=detailbug&bug_id=5644&group_id=4899
Changes by: Miles Bader <address@hidden>
Date: Thu 10/02/2003 at 15:20 (Asia/Tokyo)
------------------ Additional Follow-up Comments ----------------------------
Note that the gnu cp option for this is `--link' (short: `-l'); it might be a
good idea to use the same option name for tla.
=================== BUG #5644: FULL BUG SNAPSHOT ===================
Submitted by: paulinux Project: GNU arch -- a revision control
system
Submitted on: Wed 10/01/2003 at 05:32
Category: tla Severity: 5 - Major
Bug Group: small feature idea Resolution: None
Status: Open Release: tla--devo-1.1
Fixed Release: Merge Request?: None
Your Archive Name: Your Archive Location:
Assigned to: None
Summary: tla get --hardlinks
Original Submission: An option to get a revision very fast would be to
hardlink it against a revision library, building the library if necessary.
It would be up to the user to break the hardlinks on edited files, so it should
warn loudly about the risks.
I think that the code would be almost the same than library-add.
Follow-up Comments
*******************
-------------------------------------------------------
Date: Thu 10/02/2003 at 15:20 By: miles
Note that the gnu cp option for this is `--link' (short: `-l'); it might be a
good idea to use the same option name for tla.
-------------------------------------------------------
Date: Thu 10/02/2003 at 15:09 By: paulinux
Already done!
I have implemented an option to the get command called "hard-links".
I've tested it and works flawlessly :) YMMV
It should be useful to CAREFUL people who:
-have many branches derived from the same trunk
-need speedy gets
-know the implications of working on hard linked files
-copy-on-write when saving files
Cons
-----
-The immediate danger is that you CAN CORRUPT the archive if you modify the
the files without breaking the hardlinks.
-It needs to build revision lbraries to link to (obviously you need to define
my-default-library).
-Library and tree have to be in the same device (no hardlinks across devices).
Pros
----
-Lightening fast gets
-Space preservation
TODO
----
-Add validation code, using inode-sigs, to the library operations to eliminate
the risks of corrupting the archive in case that you modify it.
This validation will be worth to all the routines that use libraries as it
will check its validity.
Availability
------------
-I've built a public arch to host these changes:
* archive name: address@hidden
* location: http://arch.newtral.org/{archives}/arch-2003
* project: address@hidden/tla--devo--1.1
You can cherry-pick the patch to implement it directly from:
address@hidden/tla--devo--1.1--patch-1
CC list is empty
No files currently attached
For detailed info, follow this link:
http://savannah.gnu.org/bugs/?func=detailbug&bug_id=5644&group_id=4899
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/