Как заставить Mercurial замечать файлы, добавленные в подкаталоги? (HG ST, HG добавить) - PullRequest
9 голосов
/ 29 декабря 2010

Если я добавляю новый файл в корень моего проекта, он появляется со статусом ? в hg st и добавляется с hg add.

Однако, если я добавляю новый файл вподкаталог, он вообще не отображается в hg st и добавляется только в том случае, если я явно добавляю файл (даже если я добавляю каталог, содержащий файл).файлы в подкаталогах, аналогично тому, как Subversion замечает их?

Спасибо

Ответы [ 2 ]

14 голосов
/ 29 декабря 2010

Ну, просто hg add без каких-либо дополнительных аргументов добавляет также файлы в подкаталоги, в основном добавляет все файлы с неизвестным статусом для отслеживания.

Однако, если вы укажете простую маску, она будет работать только с вашим текущим рабочим каталогом (т. Е. Рабочим каталогом команды hg, а не рабочим каталогом, связанным с репозиторием), поэтому, если вы в данный момент находитесь в подкаталог, он добавит эти файлы, если вы находитесь в корневом каталоге, он добавит эти файлы вместо.

Другими словами, это:

hg add test*

Работает только с файлами в каталоге, в котором вы сейчас находитесь.

Вы можете переопределить это поведение, указав маску, которая указывает hg работать с подкаталогами:

hg add **/test*

Здесь написано "добавить все файлы, которые соответствуют 'test *', в текущем каталоге и всех подкаталогах.

Если вы удалите одну из звездочек, вы будете работать только с подкаталогами текущего рабочего каталога.

Было бы полезно, если бы вы опубликовали, какие конкретные команды вы выполняли, и вывод, если он есть, и вывод hg st до и после.

3 голосов
/ 29 декабря 2010

Вы также hg init в подкаталоге?Если так, не надо.Ниже показана проблема:

C:\>hg init project
C:\>cd project
C:\project>hg init sub
C:\project>echo >file1
C:\project>echo >sub\file2
C:\project>hg st
? file1

Удалите каталог подпапки .hg, чтобы исправить ее:

C:\project>rd /s/q sub\.hg
C:\project>hg st
? file1
? sub\file2

В отличие от Subversion, Mercurial использует только каталог .hg в корнепроект.

...