1. 倉庫的初始操作
初始化首先我先在本地存放 github 倉庫的資料夾裡新建乙個資料夾,叫 「git-test」
現在這還只是乙個普通的空資料夾,所以在這個資料夾裡開啟 git bash:
要想把乙個空的資料夾變為 github 的倉庫,首先我們要用 git 初始化這個倉庫:
雖然在初始化完倉庫之後,資料夾內看上去沒有變化,但是這個資料夾裡有乙個 .git 目錄,預設是隱藏的,開啟隱藏檔案之後就可以看見:
檢視倉庫狀態
檢視一下這個倉庫的狀態:
新增檔案
首先我先在倉庫裡建立乙個帶有乙個詞 「test」 的 readme.md
然後檢視倉庫狀態會發現有了變化:
處於未提交狀態的檔案都被歸為untracked files
提交的過程有兩步,先向暫存區中新增檔案,然後提交
首先我們將 readme.md 檔案提交到暫存區:
git add readme.md
如果你想要向暫存區新增所有變動的檔案,那就用:
git add .
然後我們檢視一下倉庫狀態:
changes to be committed 中的檔案都是已經暫存,但是沒有提交的檔案
接下來我們提交檔案:
git commit -m 'update readme.md'
-m 後面跟的是這次提交的資訊,相當於概述
有的人會想問,readme.md 在提交之前就已經在我的倉庫裡了,為什麼還要提交呢?
因為倉庫的最終目的是對外開放,你自己的本地倉庫的改動如果不提交,不推送,github 上的遠端倉庫裡是不會有變化的,其他人看不到你所做的改動,關於提交到遠端倉庫,下文會說明
檢視日誌
在多人協作時,通常需要檢視日誌來看看有誰對進行了提交:
git log
就會發現我剛才提交了 readme.md 檔案
2. 倉庫的分支
接下來的分支是乙個重要的概念,在多人協作開發時,都要用到分支
首先,在我們初始化倉庫時,有乙個預設的主分支master
,如果沒有建立其他分支,那麼所有的工作都是在master
分支上進行的,如果要建立分支:
這時候會發現已經切換到我新建的分支newbranch
了
-b 後面跟著分支的的名字,如果分支存在,就轉到那個分支,不存在就新建
假設要建立新的分支,那麼上面那條語句可以分成兩步來做:
git branch newbranch
git checkout newbranch
先建立分支,再切換到分支
3. 遠端倉庫
到現在為止,我們對倉庫的操作都是在本地進行的,接下來說一下遠端倉庫:
首先是在 github 上建立乙個倉庫,名字與上面的本地倉庫一樣:
為了寫部落格用,這個 git-test 倉庫是私有倉庫(用學生郵箱開的)
在你建立完之後,會有提示頁面:
我們要在這個倉庫作為本地倉庫的遠端倉庫,簡單地說,就是把我們本地的 git-test 倉庫和 github 上的遠端倉庫 git-test 關聯起來
推送內容至遠端倉庫
我們選擇第一種方式,初始化、新增 readme.md 和 提交更改都已經完成了,現在我們新增遠端倉庫,複製 ssh,在命令列使用:
git remote add origin [email protected]:lihanxiang/git.test.git
執行完這個命令之後,git 就會根據[email protected]:lihanxiang/git.test.git
來將我們剛才建立的倉庫設定為本地倉庫的遠端倉庫,名稱為origin
這個名稱origin
和我們在 github 上的倉庫名不一樣,我們在推送內容時,填寫的名稱是我們在設定遠端倉庫時指定的名字
然後將本地倉庫的內容推送至遠端倉庫的 master 分支:
git push -u origin master
然後在 github 上重新整理一下倉庫的頁面:
這時候我們已經將本地倉庫的內容推送至遠端倉庫了
從遠端倉庫獲取內容
如果我直接在遠端倉庫的 master 分支新建乙個檔案,在對本地倉庫進行操作時,就需要先獲取遠端倉庫的新的內容:
git pull origin master
4. 總結
上面說的是 git 的基本操作,在這些方法中,有幾個是最常用的:
git init後四步一般是連在一起git status
git checkout
git add
git commit
git pull
git push
git系列文章
霍格沃茲測試學院是由中國最大的測試開發技術社群 testerhome 孵化的高階教育品牌,致力於為 it 行業提供最優秀的測試開發技術培訓和人才服務。學院成立於 2017 年,不到一年時間就已經服務上萬使用者且好評不斷。學院已經與 70 多家最頂級的一線網際網路公司建立合作聯絡,包括 阿里 騰訊 美...
Git基本用法(二)
比較提交 git diff 比較提交只能在未提交前檢視修改了那些內容 使用git diff命令檢視 比較修改了那些檔案 gitdiff 如果檔案有新建的,還沒有提交到緩衝區,先提交到緩衝區在使用git diff cached檢視 gitdiff cached 當檔案通過git commit提交到倉庫...
Git系列文章(一) Git簡介及基本操作
git命令教程 常用的幾個命令 git init 初始化版本倉庫 git add 增加所有檔案到暫存區 git commit m 提交資訊 提交更改 git status 當前版本庫狀態 git remote add 遠端倉庫名 遠端倉庫位址 eg git remote add r my bugfi...