git init
git init 用于創(chuàng)建新的git倉庫条霜,你可以在任何目錄下使用此命令忿峻,使用后會在目錄下生成.git目錄昆箕。此時就可以創(chuàng)建文件,通過git add添加了妥色。
git clone?
git clone 【url】可以拷貝一個 Git 倉庫到本地搪花,讓自己能夠查看該項目,或者進行修改嘹害。如果多個合作開發(fā)就可以在遠程建立一個git倉庫撮竿,然后開發(fā)者使用此命令去拷貝,然后就可以開發(fā)笔呀。
git 全局配置
Git在提交時會要求我們設(shè)置自己的用戶名和郵箱幢踏,以便他人方便查看與聯(lián)系提交者,為了方便使用可進行全局配置许师。
Git config --global user.name “harvy_dong”
Git config --global user.email “xxxx@sina.cn”
當(dāng)然如果想要在某一個項目中單獨使用其他郵箱這里可切換到項目目錄中把上面的命令去掉–global參數(shù)重新執(zhí)行一遍就好了惑折。
git status
git status 可以查看當(dāng)前分支狀態(tài)
git add
git add 【path】用于添加文件到暫存區(qū)授账。
Git add -i 【path】可查看path目錄下所有的修改的狀態(tài)。輸入后會進入一個子命令系統(tǒng)惨驶。
git add . 用于添加所有的已跟蹤的文件到暫存區(qū)白热。
status子命令
輸入1或者s或者status可以查看當(dāng)前分支下文件狀態(tài),同git status 命令粗卜。
update子命令
可以通過update子命令(2: [u]pdate)把已經(jīng)tracked的文件添加到索引庫中屋确。其操作和revert子命令類似。
revert子命令
可以通過git add -i的revert子命令(3:[r]evert)把已經(jīng)添加到索引庫中的文件從索引庫中剔除续扔。
(3: [r]evert)表示通過3或r或revert加回車執(zhí)行該命令攻臀。執(zhí)行該命令后,git會例出索引庫中的文件列表纱昧。然后通過數(shù)字來選擇刨啸。輸入"1"表示git會剔除索引庫中的文件列表中的第1個文件。
"1-15"表示git會剔除索引庫中的文件列表中的第1個文件到第15個文件.回車將執(zhí)行识脆。
“2-5,6,8” 表示將第2,3,4,5,6,8個文件剔除索引庫中设联,回車執(zhí)行。
如果我們不輸入任何東西灼捂,直接回車离例,將結(jié)束revert子命令,返回gitadd -i的主命令行悉稠。
add untracked子命令
通過add untracked子命令(4:[a]dd untracked)可以把還沒被git管理的文件添加到索引庫中宫蛆。
diff子命令
可以通過diff子命令(6: [d]iff)可以比較索引庫中文件和原版本的差異。
quit子命令
quit子命令(7: [q]uit)用于退出git add -i命令系統(tǒng)的猛。
git commit
git commit 用于提交暫存區(qū)文件到倉庫中耀盗。
Git commit -m “commit message”
Git commit -a會把所有已經(jīng)track的文件add進來再提交。對于沒有track的文件需要手動add卦尊∨劾洌可使用gitcommit -a -m “message”快速提交代碼。如果直接輸入git commit會打開文本編輯器寫提交注釋(git不允許提交沒有注釋)猫牡。
Git commit --amend增補提交胡诗,會使用與當(dāng)前提交節(jié)點相同的父節(jié)點進行一次新的提交,舊的提交會被取消淌友。
git branch?
git branch 是對分支的相關(guān)操作
Git branch不帶參數(shù)是列出本地所有的分支
Git branch -a是列出本地和遠程所有的分支
Git branch -r是列出遠程的分支
Git branch?localWorkingCopy是創(chuàng)建一個localWorkingCopy的分支,但是當(dāng)前還在原來的分支上煌恢,沒有切換到創(chuàng)建的分支≌鹜ィ可使用gitcheckout localWorkingCopy切換到分支上瑰抵。
git branch -m | -M oldbranch newbranch重命名分支,如果newbranch名字分支已經(jīng)存在器联,則需要使用-M強制重命名二汛,否則婿崭,使用-m進行重命名。
git branch -d | -D branchname刪除branchname分支-d如果該分支沒有合并到主分支會報錯肴颊。-D會強制刪除分支氓栈。刪除分支前要切換到其他分支上。
git branch -d -r branchname刪除遠程branchname分支婿着,這里只是刪除本地的分支名授瘦,還要推送到服務(wù)器上。Git?push origin :branchname語法是git push?[遠程名] [本地分支]:[遠程分支]如果沒有對應(yīng)的本地分支就用空格代替竟宋。
Git v1.7.0后可使用下面的刪除遠程分支
git push --delete [遠程名] [遠程分支]