Я использую:
hg addremove
для этого после удаления всего мусора из проверенного out каталог (или после того, как я добавил шаблоны в файл .hgignore
).
hg addremove -h
сообщает вам:
Add all new files and remove all missing files from the repository.
Mercurial жалуется на *
в имени файла. Это зарезервированный символ, который нельзя использовать в именах файлов в Windows. Однако само это сообщение отправляется на stderr
и не должно влиять на работу каналов.
Альтернативным вариантом является использование:
hg remove --after
, который отмечает файлы, которые были удалены, но комментирует все файлы (те, которые все еще существуют, а также удаленные) и не реагирует на - quiet
вариант.
source
является псевдонимом команды точка .
, а команда точка является так называемой special command
, где POSIX описывает, что эти команды выходят из всей не -интерактивной оболочки в случае возникновения ошибки.
Если вы вызываете команду через:
bash test.sh
bash не выходит, но при вызове:
bash -o posix test.sh
он выходит. Таким образом, либо ваш bash был скомпилирован для совместимости с POSIX по умолчанию, либо вы вызвали другую оболочку, чем bash.
Стандарт см. в http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_14.