久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      爆肝總結(jié)git保姆級教學(xué)筆記

      本篇文章給大家?guī)砹岁P(guān)于git的基礎(chǔ)知識總結(jié)的相關(guān)知識,其中包括git和github的簡介以及遠(yuǎn)程倉庫等相關(guān)問題,希望對大家有幫助。

      爆肝總結(jié)git保姆級教學(xué)筆記

      Git

      在實際工作中,我們會遇到很多無法預(yù)料的問題:

      問題一:頻繁改需求。例:

      開發(fā)功能A – V1

      添加功能B – V2

      在功能B上添加功能C – 重新寫功能B,再添加功能C – V3

      在功能B上添加功能D – 重新寫功能B,再天添加功能D

      項目開發(fā)好以后,形成版本v1.0 需求改變: 在v1.0的基礎(chǔ)上添加功能A,形成版本v1.1 - 在上個版本的基礎(chǔ)上添加功能A 在v1.0的基礎(chǔ)上添加功能B,形成版本v1.2 - 在上個版本的基礎(chǔ)上刪除功能A,添加功能B 在v1.1的基礎(chǔ)上添加功能C,形成版本v1.3 - 在上個版本的基礎(chǔ)上刪除功能B,添加功能A,再添加功能C 在v1.2的基礎(chǔ)上添加功能D,形成版本v1.4 - 上個版本的基礎(chǔ)上刪除功能A,刪除功能C,添加功能B,添加功能D

      git可以完美解決這個刪除添加的過程。因為git可以將每個版本保存下來,可以很輕松的將當(dāng)前版本切換到之前的某個版本。

      問題二:一不小心將文件刪除了,還需要重新寫。

      在公司寫了一丟丟代碼,回了家,繼續(xù)開發(fā),白天寫的代碼沒有拷貝回來

      使用git的話,如果將某個文件刪除,形成新的版本,也可以很輕松的切換到之前的版本,將刪除的文件找回來。

      問題三:在當(dāng)前電腦開發(fā)好的內(nèi)容,換了一臺電腦,發(fā)現(xiàn)代碼還需要重新寫

      使用git的話,將每次寫好的代碼,上傳到github網(wǎng)站,只要有網(wǎng)就能下載,相當(dāng)于備份

      問題四:工作中每個人寫好的文件最后需要合并到一個大文件中,需要很繁瑣的復(fù)制粘貼

      多人分工開發(fā),最終需要將代碼合并起來

      使用git可以很輕松的進(jìn)行文件合并

      git和github簡介

      git:分布式版本控制工具。其實就是一個軟件,來管理文件夾使用的。需要通過命令操作。

      github:世界級的開源網(wǎng)站,存儲文件使用。使用者都是開發(fā)者。文件可以選擇加密,只有自己能用,可以選擇開源,所有人都能用。還可以和作者溝通。只接受git工具上傳。在這個網(wǎng)站上又很多別人寫好的各種語言的代碼文件,如果有什么插件需要下載,可以在這個網(wǎng)站上搜索。

      git可以管理本地文件,也可以管理gitgub的文件。

      本地倉庫:在自己電腦上被 git 管理的文件夾

      遠(yuǎn)程倉庫:在線上管理的文件夾

      推送:將本地的內(nèi)容,上傳到遠(yuǎn)程

      同步:將線上的內(nèi)容和本地內(nèi)容保持一致

      專業(yè)術(shù)語

      使用的是git bash here – 使用命令操作

      倉庫:是用來存儲代碼的一個文件夾,這個文件夾被git工具所管理

      本地倉庫:本地計算上被git管理的文件夾

      遠(yuǎn)程倉庫:遠(yuǎn)程服務(wù)器上被git管理的文件夾

      推送:將本地倉庫中的內(nèi)容上傳到遠(yuǎn)程倉庫 – push

      拉取(同步):將遠(yuǎn)程倉庫的內(nèi)容下載到本地一份 – 讓本地倉庫和遠(yuǎn)程倉庫保持一致

      像百度網(wǎng)盤 – 但是只能存儲代碼文件

      像百度貼吧 – 可以進(jìn)行交友、互粉、點贊…

      github.com – 全球最大的同性交友網(wǎng)站 – 國外

      本地使用git

      下載安裝,檢測是否安裝成功:

      git --version

      或者點擊鼠標(biāo)右鍵出現(xiàn)下圖也可以

      git安裝成功的標(biāo)志
      爆肝總結(jié)git保姆級教學(xué)筆記

      查看文件

      dir

      爆肝總結(jié)git保姆級教學(xué)筆記

      首先要在被管理的文件夾中進(jìn)行初始化,才能在這個文件夾中使用git命令管理:

      git init
      執(zhí)行結(jié)束后,在文件夾中會生成一個 隱藏文件夾 .git;標(biāo)志著這個文件夾成為了git倉庫

      爆肝總結(jié)git保姆級教學(xué)筆記

      初始化后,會出現(xiàn)一個隱藏的文件夾.git,此時代表當(dāng)前這個文件夾及其以下內(nèi)容都被git管理了。git管理文件夾的時候?qū)⒐芾磉^程分為3個區(qū)域:

      1. 工作區(qū):自己寫的源文件

        工作區(qū)示意圖
        爆肝總結(jié)git保姆級教學(xué)筆記
      2. 暫存區(qū):將要保存的文件,暫時存在暫存區(qū)

        暫存區(qū)示意圖
        爆肝總結(jié)git保姆級教學(xué)筆記
      3. 歷史區(qū):生成一個版本,只能將暫存區(qū)的內(nèi)容生成版本。上傳的時候只能上傳歷史區(qū)的內(nèi)容

      將源文件添加到暫存區(qū):

      git add 文件 # 將單獨一個文件添加到暫存區(qū) git add 文件夾/ # 將整個文件夾添加到暫存區(qū)(git不管理空文件夾) git add --all # 將當(dāng)前文件夾中所有文件和文件夾都添加到暫存區(qū)  -  簡寫:git add .

      爆肝總結(jié)git保姆級教學(xué)筆記

      查看git管理的文件的狀態(tài):

      git status

      爆肝總結(jié)git保姆級教學(xué)筆記

      將暫存區(qū)的文件拉回到源文件:

      git reset HEAD -- 文件 # 將某個文件從暫存區(qū)變?yōu)樵次募?git reset HEAD -- 文件夾/ # 將整個文件夾從暫存區(qū)變?yōu)樵次募?git reset HEAD -- . # 將所有文件從暫存區(qū)變?yōu)樵次募?/pre>
      

      爆肝總結(jié)git保姆級教學(xué)筆記

      將暫存區(qū)的內(nèi)容生成歷史版本:

      git commit -m "版本說明"

      爆肝總結(jié)git保姆級教學(xué)筆記
      working tree clean 工作區(qū)是干凈的 轉(zhuǎn)移歷史區(qū)成功!
      當(dāng)將所有暫存區(qū)的內(nèi)容放到歷史區(qū)的時候,工作區(qū)就是趕干凈 working tree clean
      爆肝總結(jié)git保姆級教學(xué)筆記
      注意事項:
      不能單獨將某一個文件放到歷史區(qū),一次性會將所有暫存區(qū)的內(nèi)容放到歷史區(qū)
      只能將暫存區(qū)的內(nèi)容放到歷史區(qū),不能跨步驟(將工作區(qū)的內(nèi)容放到歷史)操作

      初次需要設(shè)置自己的郵箱和姓名   輸入以下指令 所以解決方法是當(dāng)出現(xiàn)這個上述提示后 接著補充 你在命令行中執(zhí)行 git config --global user.email "你的郵箱" git config --global user.name "你的名字" (注意 “ 前面是有空格的) 輸入完后再接著執(zhí)行g(shù)it commit 即可成功! 查看所有版本信息:

      爆肝總結(jié)git保姆級教學(xué)筆記

      git log

      查看版本信息:

      版本信息示意圖
      爆肝總結(jié)git保姆級教學(xué)筆記

      回到指定版本:

      git reset --hard HEAD^ # 有幾個上檔鍵就回退幾個版本git reset --hard 歷史版本號

      刪除歷史版本:

      git rebase -i 指定的歷史版本

      刪除歷史版本的坑:

      1.刪除的時候不能指定要刪除的版本,需要指定要刪除的版本之前的版本

      2.刪除命令執(zhí)行后,會打開一個文件, :wq 敲回車,需要將其中的pick改成drop才能刪除成功
      3. 打開這個文件以后,是無法進(jìn)行輸入的,需要按 i a s 進(jìn)入到插入模式
      4. 就可以將單詞進(jìn)行修改,保存并退出,按 esc 退出了插入模式,再按 :wq 保存并退出的意思

      兩個特殊文件

      git在進(jìn)行管理文件夾的時候,不能管理空文件夾,為了避免誤會產(chǎn)生,讓空文件夾被管理,git提供了一個專業(yè)的管理空文件夾的文件 – 名字是固定的:.gitkeep – 將這個文件放到被管理的空文件夾 – 此時的空文件夾被管理了

      如果某些文件或文件夾不希望被git管理,就可以設(shè)置一個黑名單,讓這個文件或文件夾被忽略掉,此時git提供了一個文件叫 .gitignore 這個文件就可以設(shè)置黑名單 將需要被忽略掉的文件的路徑寫在這個文件中<

      讓git能管理一個空文件夾:

      在空文件夾中新建文件:.gitkeep,這個文件沒有實際意義,這是為了占位,讓空文件夾能被管理的標(biāo)識,以后要在文件夾中寫文件的時候,這個文件可以被刪除

      讓某些文件或者文件夾被忽略管理:

      在和.git同級的位置,新建文件:.gitignore,在這個文件中書寫要忽略的內(nèi)容:

      直接寫文件名,代表要忽略的是哪個文件 寫文件夾路徑,表示要忽略的是哪個文件夾 *.后綴,表示要忽略的是所有后綴為指定后綴的文件

      遠(yuǎn)程操作

      創(chuàng)建倉庫的時候,可以選擇初始化,也可以選擇不初始化

      不初始化

      在本地創(chuàng)建倉庫,放到暫存區(qū),形成歷史區(qū)

      讓本地倉庫和遠(yuǎn)程倉庫之間建立連接

      git remote add origin https://gitee.com/web_wang_wu/good-man.git

      origin是一個變量,可以自定義

      將本地倉庫的內(nèi)容上傳到遠(yuǎn)程倉庫:

      git push -u origin master

      需要輸入賬號密碼:注冊使用的郵箱以及密碼

      當(dāng)下次再次上傳的時候,就不需要輸入賬號密碼了,因為windows已經(jīng)將這次輸入的賬號密碼保存起來了

      賬號密碼存儲在計算機(jī)的 “憑據(jù)管理器” 中 ,可以刪除

      并且我們下次上傳的時候,只需要執(zhí)行命令:

      git push

      選擇初始化

      相當(dāng)于遠(yuǎn)程倉庫中已經(jīng)有內(nèi)容了
      首先,必須先將這個倉庫給本地克隆一份
      git clone 遠(yuǎn)程倉庫地址 // 遠(yuǎn)程倉庫地址后,有一個可選項,代表克隆到本地的文件夾名稱
      就在這個文件夾中,進(jìn)行本地操作,要上傳到遠(yuǎn)程
      git push
      如果我們希望使用一下別人倉庫中的代碼,就克隆下來

      我已經(jīng)有過上傳的代碼了,我想修改代碼,但是本地倉庫不見了

      項目經(jīng)理做好一個項目的倉庫,我需要根據(jù)這個倉庫中已知的文件進(jìn)行二次開發(fā)

      爆肝總結(jié)git保姆級教學(xué)筆記

      遠(yuǎn)程倉庫

      上傳到遠(yuǎn)程倉庫:

      在github上新建倉庫:

      爆肝總結(jié)git保姆級教學(xué)筆記

      爆肝總結(jié)git保姆級教學(xué)筆記

      使用https上傳:

      添加上傳地址:

      git remote add origin https://github.com/weberWangjie/test.git # 其中的origin是變量名表示上傳地址,可以自定義

      開始上傳:

      git push -u origin master # 其中的origin是表示地址的那個變量名

      首次推送遠(yuǎn)程需要輸入用戶名和密碼。

      第二次上傳的時候只需要:git push

      將遠(yuǎn)程代碼拉取到本地:(要先新建一個文件夾作為git管理的文件夾)

      git clone 遠(yuǎn)程倉庫地址

      將本地代碼和遠(yuǎn)程代碼同步:(在本地倉庫使用命令)

      git pull

      分支

      一個大項目,會分很多人開發(fā),每個人一個功能,這時候,每個功能作為一個分支,主分支只有目錄結(jié)構(gòu)。當(dāng)所有人將自己負(fù)責(zé)的功能開發(fā)完成的時候,再將所有分支合并到主分支上,形成一個完整的項目。

      每次初始化一個git的時候,默認(rèn)創(chuàng)建一個主要分支:master

      創(chuàng)建分支:

      git branch 分支名

      查看當(dāng)前分支:

      git branch

      切換分支:

      git checkout 分支名

      創(chuàng)建并切換到這個分支:

      git checkout -b 新分支名

      合并分支:(將別的分支合并到自己分支)

      git merge 要合并的分支

      刪除分支:(不能自己刪自己)

      git branch -D 要刪除的分支

      沖突

      在項目開發(fā)階段,有兩個人同時操作一個倉庫,最終總會有一個人先上傳, 一個人后上傳,先上傳的能成功,后上傳的不能成功

      因為,git遠(yuǎn)程倉庫中,任何一個版本的形成,都需要從上一個版本 作為基礎(chǔ) 再形成新的版本
      如果推送不成功,就需要在本地先有遠(yuǎn)程的版本2,然后再形成版本3,推送才能成功

      同步/拉取

      git pull // 讓本地先跟遠(yuǎn)程保持一致,然后再次推送新版本
      遠(yuǎn)程倉庫中,任何一個新版本,都必須是基于上一個版本形成的,跳版本形成:李四 – 1~3 必須是2~3

      同步:

      在本地新建一個跟遠(yuǎn)程分支同名的分支名,本地切換過去,git pull

      失敗,提示命令:

      git branch –set-upstream-to=origin/遠(yuǎn)程的分支名 本地的分支名

      繼續(xù)git pull

      提交:

      在本地新建了分支,希望推送到遠(yuǎn)程倉庫,失敗,提示命令:

      git push –set-upstream origin 遠(yuǎn)程的分支名

      git add .

      git commit -m “版本描述” # 為了避免代碼丟失,一定要寫完以后 commit一下

      git push

      git pull

      git clone 遠(yuǎn)程倉庫地址

      遠(yuǎn)程分支操作 – 給別人提交

      爆肝總結(jié)git保姆級教學(xué)筆記

      兩個人同時操作同一個分支,提交的時候會有先后順序,先提交的人正常提交了,后一個人提交的時候會產(chǎn)生沖突。因為git規(guī)定,每次提交必須是在原來的版本基礎(chǔ)上,但是第二個人在提交的時候,在遠(yuǎn)程已經(jīng)有了第二個版本,所以第二個人相當(dāng)于從第一個版本向第三個版本提交。如下圖:

      git沖突示意圖
      爆肝總結(jié)git保姆級教學(xué)筆記
      爆肝總結(jié)git保姆級教學(xué)筆記

      沖突解決:

      1. 使用命令讓本地和遠(yuǎn)程同步:

        git pull

        然后手動解決文件沖突

      2. 開辟新的分支,然后進(jìn)行分支合并

        git fetch origin master:tmp # 使用 fetch 獲取遠(yuǎn)程最新信息并開辟一個臨時分支 git diff tmp # 將當(dāng)前分支和遠(yuǎn)程分支進(jìn)行對比 git merge tmp # 將臨時分支合并到當(dāng)前分支

      歷史版本回滾的沖突

      本地先形成版本1

      本地再形成版本2

      上傳到遠(yuǎn)程

      本地回滾到版本1

      再次形成版本1·2

      再次上傳

      報錯

      因為遠(yuǎn)程倉庫只有一條時間線,但本地有兩條,解決:

      先拉取,解決沖突問題

      再次上傳

      分支遠(yuǎn)程操作

      默認(rèn)不能提交其他分支,因為,遠(yuǎn)程默認(rèn)提交為master分支。

      如果非要提交其他分支:

      git --set-upstream push origin 分支名 # 將以前記錄的-u默認(rèn)的master改為新的分支名 git push origin 分支名 # 臨時提交,不改默認(rèn)的master

      本地跟遠(yuǎn)程倉庫進(jìn)行除了master分支之外的分支,進(jìn)行推送、同步,多執(zhí)行一個命令,報錯提示的命令。

      刪除遠(yuǎn)程分支:

      git push origin --delete 將要刪除的分支名

      github服務(wù)器分支

      github上一個特殊的分支:gh-pages

      只要有這個分支,就可以將這個分支中的代碼作為一個服務(wù)器打開其中的文件。默認(rèn)打開index.html文件,其他名稱的文件需要手動輸入。

      有了這個分支之后,就可以在這個倉庫的setting中,找到打開這個分支中文件的服務(wù)器鏈接。

      爆肝總結(jié)git保姆級教學(xué)筆記

      爆肝總結(jié)git保姆級教學(xué)筆記

      分支命名規(guī)范

      master是主分支,創(chuàng)建倉庫的時候默認(rèn)生成。不接收任何上傳,只接收dev分支合并的內(nèi)容,這個分支只存儲每一次開發(fā)過程中經(jīng)過測試合格的代碼。

      dev是開發(fā)主分支,也可以說development/deve,初始化項目后,從master分支上開辟的新分支。這個分支也不接受任何代碼提交,只接收主功能分支合并的內(nèi)容。當(dāng)dev分支上的代碼測試通過以后,會被合并到主分支上。

      feature-XXX是主功能分支,是從dev分支上開辟出的分支,進(jìn)行各個功能的開發(fā),開發(fā)完成后合并到dev分支上進(jìn)行測試,這些分支接收開發(fā)的代碼提交。

      feature-XXX-fix-XXX是功能bug解決分支,在項目運行過程中,出現(xiàn)的bug進(jìn)行修復(fù),是從功能分支上開辟出來的,修改完畢后合并到功能分支上,再由功能分支合并到dev分支上。

      hot-fix-XXX是緊急bug修復(fù)分支,直接從master上開辟,修復(fù)緊急bug后,直接合并到master分支上。

      SSH提交配置秘鑰

      github上傳除了使用https協(xié)議上傳,也可以使用ssh協(xié)議來上傳。ssh上傳需要配置公鑰和秘鑰,公鑰和秘鑰是配置在自己計算機(jī)上的,所以使用了ssh之后,只能在當(dāng)前計算機(jī)使用了,不像https上傳,在任何電腦上都能上傳。

      但是ssh上傳需要配合秘鑰。

      秘鑰配置:

      ssh-keygen -t rsa -C "git全局郵箱"# 敲3次回車

      查看git全局配置:

      git config --list

      秘鑰所在文件夾:C:UsersAdmin.ssh

      爆肝總結(jié)git保姆級教學(xué)筆記

      上面的秘鑰,下面后綴為pub的是公鑰,需要將公鑰配置在github賬號中。

      爆肝總結(jié)git保姆級教學(xué)筆記

      爆肝總結(jié)git保姆級教學(xué)筆記

      打開之后,title項中自定義,key中將公鑰文件中的所有內(nèi)容復(fù)制過來。

      點擊添加按鈕后,需要輸入密碼驗證。

      此時就將ssh配置好了,后面就可以使用ssh協(xié)議進(jìn)行操作了。

      爆肝總結(jié)git保姆級教學(xué)筆記

      以后就可以使用這個地址進(jìn)行克隆和上傳了。

      推薦學(xué)習(xí):《Git教程》

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號