Выход Git терминала - PullRequest
       1

Выход Git терминала

0 голосов
/ 01 апреля 2011

Я добавил несколько файлов в мое git-репо.Затем я добавил каталог и переместил их туда.Затем я добавил каталог, используя git add

Что это значит для меня?

On branch master

Changes to be committed:
(use "git reset HEAD <file>..." to unstage)

new file:   newDir/TMXParser.c
new file:   newDir/Tilemap.c
new file:   newDir/test.xml
new file:   newDir/tileImage2.png
new file:   TMXParser.c
new file:   Tilemap.c
new file:   test.xml
new file:   tileImage2.png

Changed but not updated:
 (use "git add/rm <file>..." to update what will be committed)
 (use "git checkout -- <file>..." to discard changes in working directory)

deleted:    TMXParser.c
deleted:    Tilemap.c
deleted:    test.xml
deleted:    tileImage2.png

Untracked files:
(use "git add <file>..." to include in what will be committed)

.DS_Store

Добавляются ли файлы дважды, если я фиксирую?Как мне удалить этот .DS_Store из терминала?

Ответы [ 3 ]

5 голосов
/ 01 апреля 2011

Правильный способ был бы использовать git mv для перемещения файлов в каталог;в таком виде вы можете просто git rm их.Вы сказали git, что хотите скопировать файлы в подкаталог.Как только вы git rm из них, вывод git status сообщит вам, что git хочет переместить файлов в подкаталог.

Ярлык git add -u, который сообщает git офайлы, которые были изменены или удалены.Это не будет добавлять новые файлы, хотя.Если вы переименовываете файлы, самый простой способ сообщить git - git add -A, который просматривает измененные, удаленные и неотслеживаемые файлы.Он удалит четыре удаленных файла и добавит файл .DS_Store.

Лучший способ скрыть файл .DS_Store - игнорировать его глобально:

git config --global core.excludesfile '~/.gitignore'
echo .DS_Store >> ~/.gitignore
0 голосов
/ 01 апреля 2011

Этот вывод говорит вам, что у вас есть куча новых файлов, которые будут зафиксированы в следующий раз, когда вы выполните git commit, некоторые в этом newDir, а некоторые в вашем верхнем каталоге.

Тогда есть некоторые файлы, которые были в вашем корневом каталоге, которые были удалены. Вы можете сделать git add -u, а затем git commit, чтобы зафиксировать это изменение.

Если вы только что переместили эти файлы без их изменения, вы можете выполнить эти два шага, и git сам выяснит, что эти файлы были перемещены.

И у вас есть один файл, который git ничего не знает о .DS_Store (вам, вероятно, следует добавить его в .gitignore.

0 голосов
/ 01 апреля 2011

Файлы добавляются один раз. В папке newDir. Что удаляется, ссылка git на эти файлы в корне.

Чтобы удалить .DS_Store, создайте файл с именем .gitignore и поместите туда строку с надписью «.DS_Store» (без кавычек).

Вероятно, вы хотите "git add." и это просто добавит все изменения вашего файла, а затем 'git commit -m "My message"'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...