$ git config --global color.ui true
$ git log
$git log --pretty=oneline
08f2302691c4758475847584754dfgdf787 Commit message
$ git log --pretty=format: "%h %ad- %s [%an]"
$ git log --oneline -p # показать patch - доесть что было добавлено, а что убрали
$ git log --oneline --stat # показать статистику сколько вставили и сколько строк удалили.
$ git log --oneline --graph # сизуальное представление сливание вранчев в мастера
Варианты как указать диапазоны изменения:
$ git log --until=1.minute.ago
$ git log --since=1.day.ago
$ git log --since=1.hour.ago
$ git log --since=1.month.ago --until=2.weeks.ago
$ git log --since=2000-01-01 --until=2012.12.21
$ git diff HEAD == $ git diff # diff between last commit & current state
$ git diff HEAD^ # parent of latest commit
$ git diff HEAD^^ # grandparent of latest commit
$ git diff HEAD~5 # five commits ago
$ git diff HEAD^..HEAD # second most recent commit vs. most recent
$ git diff 43bn34bn3b4n3b4n34b..34nm3n4m34nm34nm34n # range of SHAs
$ git log --oneline
237256c cat
4fv063f Add index
f5a6ff9 Add catalog pages
$ git diff 4fv063f..f5a6ff9 # range of abreviated SHAs
$ git diff master bird # diff betwen two branches
$ git diff master bird -- thefile.txt # diff of concrete file between two branches
$ git diff --since=1.week.ago --until=1.minute.ago # time-based diff
А вот как сделать то, что делает идея -- показать кто и когда написал строку в конкрнтном файле:
$ git blame index.html --date short
1) Добавить к ним путь или шаблоно для целого ряда в файл .git/info/exclude . Этот метод подходит для файлов, которые не попадут в удаленные репозиторий, а являются строго жителями данной локальной инстанции.
2) Для файлов, которые харакерны для всех учасников разработки, но у всех они свои нужно поступать чуть иначе, чтобы гарантировать, что новопришедшие пользователи не будут их случайно заливать в удаленный репозиторий. Такие файлы и шаблоны добавляются в .gitignore файл, который также комититься в репозиторий, его склонируют вместе с кодом и сразу исключат шанс свои локальные например логи закомитить в удаленку.
Удаление
Удалить и локально и из репозитория:
$ git rm README.txt
$ git commit -m "msg"
Перестать трекать файл, но не удалять из файловой системы(случайно зтреканный например лог файл):
$ git rm --cached development.log
Но после этого желательно добавить в гитигнор этот файл, чтобы его случайно снова не добавить.
$ git log
$git log --pretty=oneline
08f2302691c4758475847584754dfgdf787 Commit message
$ git log --pretty=format: "%h %ad- %s [%an]"
| placeholder | replace with |
|---|---|
| %ad | author date |
| %an | author name |
| %h | SHA hash |
| %s | subject |
| %d | ref names |
$ git log --oneline -p # показать patch - доесть что было добавлено, а что убрали
$ git log --oneline --stat # показать статистику сколько вставили и сколько строк удалили.
$ git log --oneline --graph # сизуальное представление сливание вранчев в мастера
Варианты как указать диапазоны изменения:
$ git log --until=1.minute.ago
$ git log --since=1.day.ago
$ git log --since=1.hour.ago
$ git log --since=1.month.ago --until=2.weeks.ago
$ git log --since=2000-01-01 --until=2012.12.21
$ git diff HEAD == $ git diff # diff between last commit & current state
$ git diff HEAD^ # parent of latest commit
$ git diff HEAD^^ # grandparent of latest commit
$ git diff HEAD~5 # five commits ago
$ git diff HEAD^..HEAD # second most recent commit vs. most recent
$ git diff 43bn34bn3b4n3b4n34b..34nm3n4m34nm34nm34n # range of SHAs
$ git log --oneline
237256c cat
4fv063f Add index
f5a6ff9 Add catalog pages
$ git diff 4fv063f..f5a6ff9 # range of abreviated SHAs
$ git diff master bird # diff betwen two branches
$ git diff master bird -- thefile.txt # diff of concrete file between two branches
$ git diff --since=1.week.ago --until=1.minute.ago # time-based diff
А вот как сделать то, что делает идея -- показать кто и когда написал строку в конкрнтном файле:
$ git blame index.html --date short
... 09dfg09d (Gregg 2012-06-29 9) <ul> 27dfg678 (Gregg 2012-06-29 10) <li>Cats</li> 035ddaa4 (Jane 2012-06-30 11) <li>Octopi</li>Чтобы гит престал видеть некие файлы-папки нужно делать две вещи:
1) Добавить к ним путь или шаблоно для целого ряда в файл .git/info/exclude . Этот метод подходит для файлов, которые не попадут в удаленные репозиторий, а являются строго жителями данной локальной инстанции.
2) Для файлов, которые харакерны для всех учасников разработки, но у всех они свои нужно поступать чуть иначе, чтобы гарантировать, что новопришедшие пользователи не будут их случайно заливать в удаленный репозиторий. Такие файлы и шаблоны добавляются в .gitignore файл, который также комититься в репозиторий, его склонируют вместе с кодом и сразу исключат шанс свои локальные например логи закомитить в удаленку.
Удаление
Удалить и локально и из репозитория:
$ git rm README.txt
$ git commit -m "msg"
Перестать трекать файл, но не удалять из файловой системы(случайно зтреканный например лог файл):
$ git rm --cached development.log
Но после этого желательно добавить в гитигнор этот файл, чтобы его случайно снова не добавить.
Комментариев нет:
Отправить комментарий