<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Git操作

          共 2328字,需瀏覽 5分鐘

           ·

          2022-01-16 18:50

          一,Git 簡介


          Git 是一個(gè)開源的分布式版本控制系統(tǒng),用于敏捷 高效地處理任何或小或大的項(xiàng)目。

          Git 是 Linus Torvalds 為了幫助管理 Linux 內(nèi)核開發(fā)而開發(fā)的一個(gè)開放源碼的版本控制軟件。

          Git 與常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本庫的方式,不必服務(wù)器端軟件支持。

          二,Git 安裝配置

          1,這里咱們就介紹Windows下的安裝, 下載也是十分簡單 https://git-scm.com/downloads, 直接一路next, 就按照默認(rèn)提示安裝就好;

          2,安裝成功之后,在窗口內(nèi)點(diǎn)擊鼠標(biāo)右鍵,出現(xiàn)Git GUI Here 和 Git Bash Here;證明安裝成功;

          3,Git安裝完成之后,還需
          要最后一步設(shè)置,打開Git Bash Here 輸入 :
          $ git config --global user.name "Your Name"
          $ git config --global user.email "[email protected]"
          因?yàn)镚it是分布式版本管理系統(tǒng),所以每個(gè)機(jī)器都必須自報(bào)家門:你的名字和郵箱地址;--global表示全局,表示這臺(tái)機(jī)器上所有的Git倉庫會(huì)使用這個(gè)配置。

          三,初始化版本庫

          版本庫(repository),其實(shí)可以理解為一個(gè)文件夾,這和文件夾內(nèi)的所有文件都可以被Git管理起來;
          初始化版本庫;在指定文件夾下,打開Git Bash Here 輸入:
          $ git init
          此時(shí)文件夾內(nèi)會(huì)生成一個(gè).git文件夾,這個(gè)目錄是Git來跟蹤管理版本庫的。


          四,把代碼存儲(chǔ)到.git倉庫中

          $ git add ./filename # 如果需要提交多個(gè)文件 直接用 ./ 表示當(dāng)前目錄下所有文件
          $ git commit -m "commit description"
          $ git commit --all -m "commit description" # 一次性把修改后的代碼直接放到倉庫中


          五,查看當(dāng)前狀態(tài)

          $ git status


          六,查看日志


          $ git log # 查看歷史提交記錄
          $ git log --oneline # 查看精簡版的日志
          $ git reflog # 可以看到每一次切換版本的記錄: 可以看到所有提交的版本號(hào)


          七,回退到指定的版本

          $ git reset --hard Head~0 # 這里0表示索引
          $ git reset --hard 版本號(hào) # 這里的版本號(hào) 是提交后的版本號(hào) 通過 git log --oneline查看


          八,分支

          默認(rèn)有一個(gè)主分支 master
          工作流程為:
          1, 先創(chuàng)建一個(gè)分支
          2, 切換到指定的分支
          3, 然后正常寫入內(nèi)容, 完成后提交
          4, 切換到主分支
          5, 合并至主分支
          $ git branch dev # 創(chuàng)建了一個(gè)dev的分支, 剛創(chuàng)建時(shí)里面的東西和master是一樣的
          $ git checkout dev # 切換到指定的分支(dev)
          $ git branch # 查看當(dāng)前的所有分支
          $ git merge dev # 把當(dāng)前分支與指定分支, 進(jìn)行合并
          從某個(gè)分支提交代碼如果存在沖突的話, 需要手動(dòng)去處理沖突, 然后再提交一次


          九,提交和拉取

          $ git push https://github.com master # 把本地代碼提交到 遠(yuǎn)程倉庫的master分支
          $ git pull http://github.com master # 從遠(yuǎn)程倉庫的master分支把文件拉到本地
          $ git clone http://github.com # 會(huì)得到遠(yuǎn)程倉庫相同的版本, 如果多次執(zhí)行會(huì)覆蓋本地內(nèi)容(一般第一次使用)

          每次的提交和拉取文件都需要 輸入遠(yuǎn)程倉庫的地址, 這樣會(huì)顯得很不方便, 當(dāng)然這個(gè)也是有辦法解決的

          $ git remote add origin http://github.com # 相當(dāng)于給連接定義了一個(gè)origin的變量, 以后再次git push 或 git pull 的時(shí)候就不需要每次都輸入連接了
          $ git push origin -u master # 相當(dāng)于把遠(yuǎn)程倉庫的master和本地的master建立了關(guān)系, 以后再次push和pull的時(shí)候就直接使用 git pull 或 git push 就可以了

          pull 和 clone的區(qū)別
          clone 是本地沒有 repository 時(shí),將遠(yuǎn)程 repository 整個(gè)下載過來。
          pull 是本地有 repository 時(shí),將遠(yuǎn)程 repository 里新的 commit 數(shù)據(jù)(如有的話)下載過來,并且與本地代碼merge。


          十,ssh方式上傳代碼

          生成公鑰和私鑰
          $ ssh-keygen -t rsa -C "your email"
          執(zhí)行命令后會(huì)在當(dāng)前電腦的用戶目錄下生成一個(gè)文件夾.ssh(windows為例)
          一個(gè)id_rsa文件, 另一個(gè)id_rsa.pub, 然后復(fù)制id_rsa.pub內(nèi)的值放到github => setting =>SSH andGPG keys => New SSH keys 復(fù)制完成之后就可以通過 ssh的方式提交代碼了
          $ git push [email protected]:xxx/ssh.git master



          --------?THE END?--------

          ??

          瀏覽 35
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久草大香蕉视频在线 | 亚洲五月天综合 | 国产每日更新 | 国产区精品豆花在线 | 小黄书在线观看 |