Git Magic. Глава 2. Базовые операции |
- Statistics
- Participants
- Translate into Russian
- Translation result
- Translation complete.
If you do not want to register an account, you can sign in with OpenID.
Git Magic. Chapter 2. Basic Tricks | ||
== Basic Tricks == | ||
Rather than diving into a sea of Git commands, use these elementary examples to get your feet wet. Despite their simplicity, each of them are useful. | Прежде чем погружаться в дебри многочисленных Git команд, попробуйте воспользоваться этими простыми примерами, чтобы немного освоиться. Несмотря на свою простоту, каждая из них является полезной. | |
Indeed, in my first months with Git I never ventured beyond the material in this chapter. | Действительно, в первые месяцы использования Git я не выходил за рамки материала изложенного в этой главе. | |
=== Saving State === | ||
About to attempt something drastic? Before you do, take a snapshot of all files in the current directory with: | Выполняете опасную операцию? Перед тем, как сделать это, создайте снимок всех файлов в текущей директории с помощью команд: | |
$ git init | ||
$ git add . | ||
$ git commit -m "My first backup" | ||
Now if your new edits go awry, run: | Теперь, если ваши новые правки все испортили, запустите: | |
$ git reset --hard | ||
to go back to where you were. To save the state again: | чтобы вернуться к исходному состоянию. Чтобы вновь сохраниться выполните: | |
$ git commit -a -m "Another backup" | ||
==== Add, Delete, Rename ==== | ||
The above will only keep track of the files that were present when you first ran *git add*. If you add new files or subdirectories, you'll have to tell Git: | Приведенный выше пример будет отслеживать файлы, которые вы добавили когда впервые запустили *git add*. Если вы хотите добавить новые файлы или поддиректории, вам придется сказать Git: | |
$ git add NEWFILES... | ||
Similarly, if you want Git to forget about certain files, maybe because you've deleted them: | Аналогично, если вы хотите чтобы Git забыл о некоторых файлах, может быть, потому, что вы удалите их: | |
$ git rm OLDFILES... | ||
Renaming a file is the same as removing the old name and adding the new name. There's also the shortcut *git mv* which has the same syntax as the *mv* command. For example: | Переименование файла это то же, что и удаление старого имени и добавления нового. Для этого есть *git mv*, который имеет тот же синтаксис, что и команда *mv*. Например: | |
$ git mv OLDFILE NEWFILE | ||
=== Advanced Undo/Redo === | ||
Sometimes you just want to go back and forget about every change past a certain point because they're all wrong. Then: | Иногда вы просто хотите вернуться к определенной точке и забыть все изменения, потому что все они были неправильными. В таком случае: | |
$ git log | ||
shows you a list of recent commits, and their SHA1 hashes. Next, type: | покажет вам список последних изменений (коммитов, прим. пер.), и их SHA1 хеши. Далее введите: | |
$ git reset --hard SHA1_HASH | ||
to restore the state to a given commit and erase all newer commits from the record permanently. | для восстановления состояния до указанного коммита и удаления всех последующих коммитов безвозвратно. | |
Other times you want to hop to an old state briefly. In this case, type: | Возможно, в другой раз вы захотите быстро вернуться к старому состоянию. В этом случае наберите: | |
$ git checkout SHA1_HASH | ||
This takes you back in time, while preserving newer commits. However, like time travel in a science-fiction movie, if you now edit and commit, you will be in an alternate reality, because your actions are different to what they were the first time around. | Это перенесет вас назад во времени, до тех пор пока вы не сделаете новые коммиты. Как и в фантастических фильмах о путешествиях во времени, если вы редактируете и коммитите код, вы будете находиться в альтернативной реальности, потому что ваши действия отличаются от тех, что вы делали до этого. | — не уверена как именно будет правильно - но грамматически 1е предложение означает - либо 1)это действие позволит вернуться назад, к тому моменту, когда были созданы (или сохранены) последующие (как их назвали ранее) коммиты, либо: 2) это действие позволит вернуться назад, в то время, как будут создаваться (или сохраняться) последующие коммиты — Natamile — В данном случае ведется речь именно о том, что комманда checkout перенесет нас именно в то состояние, которое мы сохранили в отдельную ветвь (бранч). — mifistor — ну да, я так и говорю) но тут по-другому написано (получается - будет переносить и переносить до тех пор, пока не появятся новые...) или это понятней? — Natamile |
This alternate reality is called a 'branch', and <<branch,we'll have more to say about this later>>. For now, just remember that | Эта альтернативная реальность называется 'бранч' и | |
$ git checkout master | ||
will take you back to the present. Also, to stop Git complaining, always commit or reset your changes before running checkout. | вернёт вас обратно в настоящее. Кроме того, чтобы не получать предупреждений от Git, всегда делайте коммит или сброс ваших изменений до запуска checkout. |
License: GNU General Public License version 3

— Уважаемые коллеги, я создал открытый репозиторий gitmacik-ru, куда складываю готовые главы. http://github.com/mifistor/gitmagic-ru Если Вы хотите получить права на запись в репозиторий свяжитесь со мной mifistor@gmail.com — mifistor