一、什麼是github?
github 是乙個面向開源及私有軟體專案的託管平台,因為只支援 git 作為唯一的版本庫格式進行託管,故名 github。
二、什麼是git?
git是一款免費、開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的專案。 git的讀音為/gɪt/。
git是乙個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的專案版本管理。 git 是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體。
三、git的使用及特點
分布式相比於集中式的最大區別在於開發者可以提交到本地,每個開發者通過轉殖(git clone),在本地機器上拷貝乙個完整的git倉庫。
下圖是經典的git開發過程。
git的功能特性:
從一般開發者的角度來看,git有以下功能:
1、從伺服器上轉殖完整的git倉庫(包括**和版本資訊)到單機上。
2、在自己的機器上根據不同的開發目的,建立分支,修改**。
3、在單機上自己建立的分支上提交**。
4、在單機上合併分支。
5、把伺服器上最新版的**fetch下來,然後跟自己的主分支合併。
6、生成補丁(patch),把補丁傳送給主開發者。
7、看主開發者的反饋,如果主開發者發現兩個一般開發者之間有衝突(他們之間可以合作解決的衝突),就會要求他們先解決衝突,然後再由其中乙個人提交。如果主開發者可以自己解決,或者沒有衝突,就通過。
8、一般開發者之間解決衝突的方法,開發者之間可以使用pull 命令解決衝突,解決完衝突之後再向主開發者提交補丁。
從主開發者的角度(假設主開發者不用開發**)看,git有以下功能:
1、檢視郵件或者通過其它方式檢視一般開發者的提交狀態。
2、打上補丁,解決衝突(可以自己解決,也可以要求開發者之間解決以後再重新提交,如果是開源專案,還要決定哪些補丁有用,哪些不用)。
3、向公共伺服器提交結果,然後通知所有開發人員。
優點:適合分布式開發,強調個體。
公共伺服器壓力和資料量都不會太大。
速度快、靈活。
任意兩個開發者之間可以很容易的解決衝突。
離線工作。
缺點:資料少(起碼中文資料很少)。
學習週期相對而言比較長。
不符合常規思維。
**保密性差,一旦開發者把整個庫轉殖下來就可以完全公開所有**和版本資訊。
四、如何使用git管理github及常用命令
1.登入github**註冊賬號(賬號,郵箱,密碼)
3.在本地倉庫目錄右擊滑鼠選擇選單git bash here開啟git的命令視窗
git config --global user.name "使用者名稱";
git config --global user.email "郵箱"
5.使用git init命令建立本地倉庫(在當前資料夾使用可設定當前資料夾為本地倉庫),隱藏資料夾.git
6.建立ssh-key連線遠端倉庫。
$ cd ~/.ssh檢查是否存在key,$ ssh-keygen -t rsa -c "郵箱"生成ssh-key檔案。
7.在github.com設定ssh-key。
8.使用git連線github.com($ ssh -t [email protected])
五、git常用命令
git config --global user.name
git config--list
ls //本目錄所有東西
cd desktop //進入桌面
mkdir//建立資料夾 new_git
git init //建立本地倉庫
git add -a//放入暫存區
git add a.txt //放入暫存區
git commit -m"first commit"//放入倉庫區 「」中寫說明
git status//檢視暫存區變動
git log//檢視提交記錄
git push //提交
git diff //新增忘記後查詢
git log --pretty=online //檢視簡約版的提交記錄
git reset --hard head ^^ //回退乙個版本
git reset --hard ()版本號
git reflog //獲取版本號
git branch //檢視分支
git checkout aaaa //切換分支
git git branch aaa //建立分支
git add -a
git commit -m"aaa"
git merge aaa//合併分支
git branch
git branch -d aaa
git remote -v//檢視源
git fetch upstream //
git merge upstream/master // 合併
id_sra。pub//要是
附件:git的使用方法
1.電腦首先安裝git,
2.在官網註冊github賬號。
一,使用git在控制台進行本地操作
1.開啟gitbash
2.填寫使用者名稱和郵箱作為標識分別執行以下命令:
git/ config /--global /user.name /"使用者名稱";
git /config /--global /user.email /"郵箱名";(注意"/"在這裡代表空格,輸入完指令回車)
3.$/git/config/--list(輸入命令列)
會顯示輸入的使用者名稱和郵箱
4.用cd檔案路徑找到別設為倉庫的資料夾
$/cd/某盤例d:/git/gitproject(前2個/空格)
5.然後輸入git init將檔案設定成倉庫
$/git/init
此時在gitproject檔案中多了乙個隱藏資料夾.git
6.在倉庫中放入乙個html檔案,用模擬造作然後在控制台輸入git status檢視在工作區是否有為轉到本地倉庫的檔案
$/git/status (注意:預設為master分支,此時test.html為紅色字型)
當看到test.html為紅色字型時,證明檔案做過修改,但是還沒有儲存到暫存區。我們輸入git add test.html 然後在輸入git status檢視,發現test.html變為綠色時,證明檔案已經儲存到暫存區。
$/git/add/test.html
$/git/status
注意:使用 git add 檔名 命令將檔案儲存到暫存區。然後輸入 git commit -m "備註資訊"命令將該檔案提交到本地倉庫。
$/git/commit/-m/"first"
$/git/status (沒有提交,工作樹為空。)
此時資料夾中仍有檔案。只是本次工作樹的操作提交給本地倉庫。次工作樹的內容跟本地倉庫儲存的內容一致。而不是將資料夾中的檔案刪除。
7.向本地倉庫儲存檔案的步驟為:
git add 檔名————> git commmit -m "備註資訊"
8.輸入$/git/log檢視提交歷史版本回退命令為:
$/git/reset/--hard/89af
9.檔案的找回與刪除
$/git checkout/--/"檔名"
$/git/status
刪除:$/git/rm/"檔名"
刪除後用$/git/commmit/-m/"remove/檔名"備註起來。
分支:就是沒有完成的作品,分多次完成,最後合併到原來分支上。
1.輸入$/git/checkout/-b/dev 建立乙個dev開支
$/git/branch檢視現有分支
2.輸入 $/git/checkout/master 切回分支檢視檔案內容
3.如果專案完成可以輸入 $/git/branch/-d/dev
$/git/branch 刪除成功,只剩master分支。
git版本管理工具
以svn為代表的集中式版本控制系統,只有乙個 庫,開發的時候需要先從 庫獲取到最新的版本,然後開始幹活,幹完活之後提交到 伺服器。而git是一種分布式管理控制,每個使用 庫的機器上面都可以有自己的本地 庫,如果多人協作開發的話,只需要用一台伺服器作為中轉,來同步不同使用者之間的本地庫就行了,這樣在沒...
git版本管理工具
用管理員和開發者來舉個例子吧!首先說一下 建專案的這個人為管理員 1.管理員在github上面建好專案 2.管理員自己在本地建乙個資料夾,3.git clone 在github上覆制位址 轉殖專案 4.cd 專案資料夾名 轉換到拉取下來的專案資料夾 5.git checkout b dev 建立分支...
學習git版本管理工具
1.強制上傳 git push f origin master2.刪除已關聯的名為origin的遠端庫 git remote rm origin git remote rm github3.檢視遠端庫資訊 git remote v4.關聯github的遠端庫 git remote add githu...