タイトル:Gitの基础
日:2019年2月27日夜01時57分19秒
タグ:
- Gitの
カテゴリ:
- Gitの
TOC:真
Gitのよく使用するコマンド
- リポジトリを取得
git init
git clone
- バージョン管理
git add
git commit
git rm
- 情報を表示
git help
git log
git diff
- リモートコラボレーション
git pull
git push
git log
ビューには、レコードを提出します
git log -3
最新のコミット・レコードの23を参照してください。
git log --pretty=oneline
1行表示の記録を提出するには
git log --pretty=format:"%h - %an,%ar : %s"
、レコードを提出する特定のフォーマットで表示されます
Gitの提出IDは、(IDコミット)、この値が計算されたダイジェストSHA1実際には、ダイジェスト値です。
git checkout -- 文件名/文件夹名
廃棄提出
user.nameとuser.emailのために、設定するには、3つの場所があります
/etc/gitconfig
(ほとんど使用することはありません、あなたが使用している場合、Xcodeのは、このディレクトリが存在しない場合は、手動で作成する必要があるのgitが付属しています)、git config --system
~/.gitconfig
(非常に一般的)、git config --global
- 特定のプロジェクトのための
.git/config
ファイル、git config --local
3つの設定の上、構成3に、配置されて上から下まで減少優先度は、1,2マスクされます。
git config --local user.name '张三'
git config --local user.email '[email protected]'
ドキュメントを表示します。git help config
git config --help
man git-config
git config
git config user.name
:ユーザー名を見ます
git config user.email
:ビューのユーザーのメールボックス
注:git rm
付きrm
git mv
、リネーム
git add --all
<==> git add .
記述が間違っていた提出、修正する必要があり、使用git commit --amend -m "修正msg"
#gitignore
.gitignore
手動でファイルを作成する必要があり、あなたは表現によってサポートされ、ファイル内のファイル名を無視する必要があります。
いくつかの栗:
プロジェクトのディレクトリを無視するにはtest.xcodeproject
、ファイル、ファイル名を書き込むことができます。
すべてのプロジェクトのディレクトリ無視し.xcodeproject
、その後、プロジェクトファイルを*.xcodeproject
。
!a.xcodeproject
、A.xcodeprojectこのプロジェクトファイルは無視されていません。
*.c
#サフィックスを持つすべてのファイルを無視します.C!lib.c
lib.c除き#/TODO
TODO位のみサブディレクトリ/ TODOを含まない、プロジェクト内のファイルのルートディレクトリを無視しますbuild/
#buildディレクトリ内のすべてのファイルを無視しますdoc/*.txt
#は、doc / notes.txtをを無視しますが、ドキュメント/サーバー/ arch.txtを無視しません。/*/test.txt
ディレクトリのサブディレクトリのtest.txtファイルのルートディレクトリを無視します/**/test.txt
、ファイル内のすべてのサブディレクトリの下にルートディレクトリを無視あるtest.txt
支店支店
現在のブランチを見ます:git branch
新支店:git branch new_branch
枝の切り替え:git checkout new_branch
最後のブランチにクイックスイッチバック:git checkout -
このとcd -
類似しました
削除された支店:git branch -d new_branch
削除された枝一般的なエラー:
分岐が現在で削除する1
error: 无法删除检出于 '/Users/hanoi_ahoj/mtgit' 的分支 'new_branch'。
何のマージ支店を削除しない2。
error: 分支 'new_branch' 没有完全合并。
如果您确认要删除它,执行 'git branch -D new_branch'
マージ支店:git merge new_branch
頭
HEADは現在のブランチを指します
(HEAD HEADは.gitディレクトリ内のファイルを保存し、猫のHEADの外観)
主人
マスターは、基本的に提出するように指示されます
- HEADは現在のブランチを指します
-
新しいブランチを作成します。DEVを
-
実施のdevのブランチにコミット
-
早送り(早送り、早マージは、競合は発生しません)
-
合併のGitの時間で同じファイルを変更するには、同じ行の二つの枝が対象であるか、優先他の枝を習得するのか分からない、それがプロンプト競合する場合は、この文書の内容を表示するには、この時間は、あなたが内部を見つけるだろうGitは紛争の代わり、手動で競合を処理する必要性をマークし、彼自身の方法でコンテンツです。使用を解決した後
git add file_name
、この競合が解決されたのGitを伝えるために。ポストマスターブランチで、この紛争を解決し、その後のdevのブランチにmasterブランチをマージするとき、それはプロンプトAの競合はありませんが、早送り。
マック/ Linuxのいくつかのヒント
優れたツール:ああ、私のzsh
ファイルをコピーしcp
、ファイルを移動mv
(また名前の変更に使用)
入力電流コマンドは、あなたが使用できることを望まなかった場合にはctrl+c
rm -rf 文件夹名
、再帰削除フォルダ
ctrl+l
、等価clear
、画面クリア
ctrl+a
現在のコマンドの先頭にスキップしctrl+e
、現在のコマンドの最後にジャンプ
l
、どちらが同等でls -al
隠しファイルを含め、現在のディレクトリ内のすべてのファイルを表示します
ctrl+f
、ページダウン、ctrl+b
ページアップ
mkdir -p test/test1/test2
、再帰的に複数のディレクトリを作成します。
前のフォルダへのクイックスイッチバック:cd -
同時に複数のコマンドを実行します。mkdir mydir && cd mydir
.
それは、現在のディレクトリを表し..
代わっ用の上のディレクトリ