كيفية الحصول على استنساخ Hardlink على Windows
-
22-09-2019 - |
سؤال
لقد حصلت على إصدار WIN7 X64 الذي يدير سلحفاة 1.0 x64. حول Tortoise يكشف أنه 1.0 "مع Mercurial-1.5 ، Python-2.6.4 ، Pygtk-2.16.0 ، GTK-2.18.7". لقد تم تثبيت ActivePython 2.6 وتثبيت Mercurial 1.5 x64 (مثبت عبر مثبت الزئبق من المثبت 64 بت. لا استنساخ واحد مع روابط صلبة على صندوق Windows الخاص بي. محركات الأقراص على صندوقي هي أيضًا NTFS ، والتي تدعم الروابط الصعبة.
في الفعل ، عندما أقوم بتشغيل مترجم Python وتنفيذ إنشاء رابط صعب عبر واجهة برمجة تطبيقات Win32File ، فإنه ينشئ رابطًا بنجاح:
me@pc C:\temp
> python
ActivePython 2.6.2.2 (ActiveState Software Inc.) based on
Python 2.6.2 (r262:71600, Apr 21 2009, 15:05:37) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from win32file import *
>>> CreateHardLink('C:\\temp\\Mike2.txt','C:\\temp\\Mike.txt')
>>> ^Z
me@pc C:\temp
> fsutil hardlink list Mike.txt
\temp\Mike.txt
\temp\Mike2.txt
ومع ذلك ، إذا استخدمت Mercurial لاستنساخ ، فلن أحصل على نفس النتائج:
me@pc C:\Users\mcaron
> which hg
C:\Program Files (x86)\Mercurial\\hg.EXE
me@pc C:\temp
> hg status demo
mcaron@DEV-MCARON-W64 C:\temp
> hg log demo
changeset: 0:6db7092740d5
tag: tip
user: Michael Caron <mcaron@solidworks.com>
date: Wed Mar 24 16:08:38 2010 -0500
summary: first
me@pc C:\temp
> hg clone demo demo2
updating to branch default
5 files updated, 0 files merged, 0 files removed, 0 files unresolved
me@pc C:\temp
> fsutil hardlink list .\demo\mike.prtprp
\temp\demo\mike.prtprp
me@pc4 C:\temp
> fsutil hardlink list .\demo\mike1.prtprp
\temp\demo\mike1.prtprp
me@pc C:\temp
> fsutil hardlink list .\demo\mike1_2.prtprp
\temp\demo\mike1_2.prtprp
mme@pc C:\temp
> fsutil hardlink list .\demo\mike2.prtprp
\temp\demo\mike2.prtprp
me@pc4 C:\temp
> hg --version
Mercurial Distributed SCM (version 1.5)
Copyright (C) 2005-2010 Matt Mackall <mpm@selenic.com> and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
me@pc C:\temp
> python -V
Python 2.6.2
هل لدى أي شخص استنساخ يعمل على النوافذ مع استخدام الروابط الصلبة أم أنها غير مدعومة؟ لقد لاحظت أن مثبت السلحفاة يأتي مع تثبيت Python 2.6. لاحظت أيضًا أنها تحتوي على قابلة للتنفيذ الخاصة بـ HG (والتي جربتها أيضًا وأحصل على نفس النتائج). هل يمكن أن تسبب السلحفاة والمنشآت الزئبقية مشاكل؟
المحلول
نعم ، لقد حصلت على الإجابة: الانتعاش المتشددين في ريبو (.hg) وليس دليل العمل. وبالتالي ، إذا قمت بإنشاء استنساخ مع -U
استنساخك لا يأخذ أي أقراص إضافية. يعد استنساخ DIR-DIR غير العمل خيارًا رائعًا على جانب الخادم ، وأحيانًا مفيدًا على أجهزة الكمبيوتر المكتبية أيضًا. إذا نسيت -U ، يمكنك دائمًا التخلص من دير العمل مع ريبو hg update -r null
الذي يتم تحديثه إلى المراجعة الفارغة ، والتي تسبق إضافة أي ملفات.