這篇文章主要介紹“Git原理和常用命令有哪些”,在日常操作中,相信很多人在Git原理和常用命令有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Git原理和常用命令有哪些”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
成都創(chuàng)新互聯(lián)始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營(yíng)理念,通過多達(dá)十多年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的全網(wǎng)整合營(yíng)銷推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:雨棚定制等企業(yè),備受客戶認(rèn)可。
Git是什么
從一般開發(fā)者的角度來看,git有以下功能:
1、從服務(wù)器上克隆完整的Git倉庫(包括代碼和版本信息)到單機(jī)上。
2、在自己的機(jī)器上根據(jù)不同的開發(fā)目的,創(chuàng)建分支,修改代碼。
3、在單機(jī)上自己創(chuàng)建的分支上提交代碼。
4、在單機(jī)上合并分支。
5、把服務(wù)器上最新版的代碼fetch下來,然后跟自己的主分支合并。
6、生成補(bǔ)?。╬atch),把補(bǔ)丁發(fā)送給主開發(fā)者。
7、看主開發(fā)者的反饋,如果主開發(fā)者發(fā)現(xiàn)兩個(gè)一般開發(fā)者之間有沖突(他們之間可以合作解決的沖突),就會(huì)要求他們先解決沖突,然后再由其中一個(gè)人提交。如果主開發(fā)者可以自己解決,或者沒有沖突,就通過。
8、一般開發(fā)者之間解決沖突的方法,開發(fā)者之間可以使用pull 命令解決沖突,解決完沖突之后再向主開發(fā)者提交補(bǔ)丁。
就是你在電腦里能看到的目錄,開發(fā)時(shí)候所在目錄或文件夾。當(dāng)我們新建目錄或者文件夾時(shí)的內(nèi)容都放在工作區(qū)。
工作區(qū)有一個(gè)隱藏目錄.git
,這個(gè)不算工作區(qū),而是Git的版本庫。
Git的版本庫里存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區(qū),還有Git為我們自動(dòng)創(chuàng)建的第一個(gè)分支master
,以及指向master
的一個(gè)指針叫HEAD
。大致結(jié)構(gòu)如下:
我們把文件往Git版本庫里添加的時(shí)候,是分兩步執(zhí)行的:
第一步是用git add
把文件添加進(jìn)去,實(shí)際上就是把文件修改添加到暫存區(qū)(被版本庫索引);
第二步是用git commit
提交更改,實(shí)際上就是把暫存區(qū)的所有內(nèi)容提交到當(dāng)前分支。
因?yàn)槲覀儎?chuàng)建Git版本庫時(shí),Git自動(dòng)為我們創(chuàng)建了唯一一個(gè)master
分支,所以,現(xiàn)在,git commit
就是往master
分支上提交更改。
遠(yuǎn)程相關(guān):
git remote add origin git://xxx 關(guān)聯(lián)遠(yuǎn)程分支,其中origin 為遠(yuǎn)程倉庫的別名
git remote remove origin 解除分支關(guān)聯(lián)
push相關(guān)操作:
git push origin <本地分支>:<遠(yuǎn)程分支>
git push -u origin master // 默認(rèn)情況下這條語句等價(jià)于提交本地的master倉庫到遠(yuǎn)程倉庫,并作為遠(yuǎn)程的master分支
git push origin test:test // 提交本地test分支作為遠(yuǎn)程的test分支
git push origin test:master // 提交本地test分支作為遠(yuǎn)程的master分支
pull相關(guān)命令
git pull origin <遠(yuǎn)程分支>:<本地分支>
git pull origin next:master //將遠(yuǎn)程next分支與本地master分支合并
git pull origin next //將遠(yuǎn)程next分支與當(dāng)前所在分支合并
git pull origin //當(dāng)前分支與遠(yuǎn)程分支存在追蹤關(guān)系,git pull
就可以省略遠(yuǎn)程分支名
其他:
git checkout -b dev //創(chuàng)建并切換到dev分支
git merge dev //合并dev分支到當(dāng)前分支
git checkout dev //切換到dev分支
git branch dev //創(chuàng)建dev 分支
常見場(chǎng)景:
1. 將此次修改提交到bugfix分支后,也需要提交到dev分支。則切換到dev分支執(zhí)行以下命令:
git cherry-pick commitid // 將某個(gè)分支的提交再次在當(dāng)前分支提交。也可以在同一分支執(zhí)行
git cherry-pick commitid1 .. commitid1 // 將某個(gè)分支的commitid1 與commitid1之間的提交再次在當(dāng)前分支提交。
2. 在當(dāng)前分支A修改代碼到一半,又需要立馬切到另一個(gè)分支B解決棘手問題,又不想先提交分支A的代碼。如果強(qiáng)制切到B分支,則A分支的修改會(huì)被丟棄。使用stash可以將當(dāng)前修改緩存起來:
git stash save "xxx" //給當(dāng)前緩存內(nèi)容取名“xxx”,便于記錄版本
注意:默認(rèn)將暫存和未暫存(被索引)的文件緩存起來。
git stash list // 查看所有緩存內(nèi)容
git stash pop/apply //pop將緩存棧頂彈出并應(yīng)用到當(dāng)前分支,apply將緩存棧頂應(yīng)用到當(dāng)前分支,不彈出
git stash pop/apply stash@103 //應(yīng)用指定緩存內(nèi)容
git stash clear // 清除所有緩存
git stash drop stash@104 //刪除指定緩存,默認(rèn)棧頂
https://my.oschina.net/woniuyi/blog/3103613
到此,關(guān)于“Git原理和常用命令有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
網(wǎng)頁名稱:Git原理和常用命令有哪些
文章源于:http://aaarwkj.com/article14/jjgege.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、外貿(mào)建站、虛擬主機(jī)、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)