|
以前、Gitの基本とチームコラボレーション環境でのGitの使い方を習得するためのチュートリアルをいくつか公開しました。ここで紹介したGitコマンドは、開発者がGitの世界で生き残るのに十分なものです。このチュートリアルでは、時間を効率的に管理し、Gitの機能を最大限に活用する方法を探っていきます。
注: ここで説明するコマンドの中には、角括弧を含むものがあります(例: `git add -p [file_name]`)。これらの例では、角括弧内の内容を実際の数値や識別子などに置き換え、角括弧を削除してください。 1. Gitの自動補完コマンドライン環境でGitコマンドを実行する場合、コマンドを一つ一つ手動で入力するのは面倒です。そこで、数分かけてGitコマンドの自動補完を設定することをお勧めします。 *nix システムでは、次のコマンドを実行して自動補完スクリプトをダウンロードします。 cd ~ カール https://raw.github.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash 次に、~/.bash_profile ファイルに次の行を追加します。
if [ -f ~/.git-completion.bash ];then
~/.git-completion.bash
フィ
以前にも言及しましたが、もう一度強調しておきます。Git のすべての機能を使用したい場合は、必ずコマンドライン環境に切り替える必要があります。 2. Gitでファイルを無視するGitリポジトリにコンパイル済みの出力ファイル(.pycファイルなど)が表示されてイライラしていませんか?あるいは、誤ってGitに追加してしまい、イライラしていませんか?もう探す必要はありません。Gitにこれらのファイルとディレクトリをすべて無視させる方法があります。`.gitignore`というファイルを作成し、Gitに追跡させたくないファイルとディレクトリをリストするだけです。例外を指定するには感嘆符(!)を使用できます。 *.pyc *。EXE my_db_config/ !main.pyc 3. 誰が私のコードを改ざんしたのでしょうか?何か問題が起きると、つい他人のせいにしてしまうのは人間の性です。サーバープログラムが正常に動作しない場合、原因を見つけるのはとても簡単です。`git blame` を実行するだけです。このコマンドは、ファイル内の各行の作成者、その行を変更したコミット、そしてコミットのタイムスタンプを表示します。 git blame [ファイル名] 以下のスクリーンショットでは、このコマンドの出力がより大きなライブラリでどのようになるかがわかります。 4. ライブラリの履歴を表示する以前のチュートリアルで、`git log` コマンドの使い方を既に説明しました。とにかく、知っておくべきオプションが3つあります。
これら 3 つのオプションを併用すると、次の効果が得られます。 5. コミットの追跡を失わないでください。不要なデータをコミットした後、ハードリセットを実行して以前の状態に戻したとします。後になって、その過程で他の重要な情報が失われていることに気づき、それを復元したい、あるいは少なくとも表示できるようにしたいと思ったとします。そこで`git reflog`が役立ちます。 単純な `git log` では、最新のコミット、その親コミット、さらにその親コミットの親コミットなどに関する情報しか得られません。一方、 `git reflog` は HEAD が指し示すコミットのリストです。このリストはローカル環境に依存しており、リポジトリの一部ではなく、プッシュやマージ操作には含まれないことに注意してください。 `git log` コマンドを実行すると、私のリポジトリの一部であるコミット履歴を見ることができます。 しかし、`git reflog` コマンドを実行すると、ハードリセットによって失われたコミット (b1b0ee9-HEAD@{4}) が明らかになりました。 オリジナルリンク: http://www.linuxeden.com/html/softuse/20140726/154105.html |