Git的初步學習
前言
感謝! 承蒙關照~
Git
的初步學習
為什麼要用Git
和Github
呢?它們的出現是為了用於提交專案和儲存專案的,是一種很方便的專案管理軟體和網址地址.
接下來看看,一家公司的基本流程圖:
集中式->分散式->託管網站
之前專案管理的日子:
專案開發,版本控制系統.
-v1.0
-> 檔案
-v1.1
-> 檔案
本地版本控制系統
慢慢地有了專案管理系統加入,集中式的控制系統:
集中化的版本控制系統
(Centralized Version Control Systems,簡稱 CVCS)
分散式版本控制系統
Distributed Version Control System,簡稱 DVCS
Git
的特點:
Git
的功能:
Git
簡介:
Git
是一個偉大的創新,到 2002
年,專案組開始啟用一個專有的分散式版本控制系統 BitKeeper
來管理和維護程式碼。
版本控制系統,就是一個名詞而已吧,Git
是為了方便人們而發明的,當我們每次寫完程式碼時,提交到 Github
上時,我們會記錄下提交說明,簡述該程式碼寫了什麼內容,做了哪些更改,能夠方便記錄,在 Github
上回記錄你程式碼的增刪情況,就可以瞭解你每次做了什麼,改過什麼,很方便也對他人瞭解你的操作行為。
當你進行結對操作專案時,你的夥伴能通過了解提交說明了解你的行為操作。
Git
的三種狀態,為已提交(committed
)、已修改(modified
)和已暫存(staged
)已經提交表示資料已經安全的儲存在本地資料庫中,已經修改表示修改了檔案,但是沒有儲存到資料庫中,要進行提交,已暫存表示對一個修改的檔案進行標記,然後提交時,包含在其中.
我們先下載Git
,安裝Git
。
Git
下載網站為:
https://git-scm.com/downloads
Git
官方文件地址:
https://git-scm.com/book/zh/v2
https://git-scm.com/download/mac
https://git-scm.com/download/win
在 Windows
上安裝
$ tar -zxf git-2.0.0.tar.gz
$ cd git-2.0.0
$ make configure
$ ./configure --prefix=/usr
$ make all doc info
$ sudo make install install-doc install-html install-info
使用Git
來升級:
$ git clone git://git.kernel.org/pub/scm/git/git.git
建議使用這個網址安裝:
http://git-scm.com/download/win
我們在用Git
的時候,有三個工作區域的概念:
Git
倉庫- 工作目錄
- 暫存區域
Git
倉庫是用來儲存專案檔案的地方,工作目錄是對專案的某個版本獨立提取出來的內容,暫存區域是一個檔案,儲存了下次將要提交的檔案資訊.
小圖示:
設定賬號:
如何設定賬號,首先你要去 github
網站上進行註冊,擁有自己的賬號先:
開啟你下載好的 GIT
,“Git Bash” 軟體
$ git config --global user.name "your_name" $ git config --global user.name "your_email@example.com"
做好配置user.name
和user.email
.
Git
獲取幫助
獲取Git
命令手冊:
$ git help <verb>
$ git <verb> --help
$ man git-<verb>
獲取config
命令手冊:
$ git help config
git
config
的工具來幫助設定控制 Git
外觀和行為的配置變數:
/etc/gitconfig 檔案: 包含系統上每一個使用者及他們倉庫的通用配置
~/.gitconfig 或 ~/.config/git/config 檔案:只針對當前使用者
.git/config:針對該倉庫
建立版本庫
右鍵滑鼠點選Git Bash
$ git init url
然後新增檔案,使用命令git add <file>
,接著使用git commit -m "資訊介紹"
,就大功告成了!
檢視配置
``` 可以使用 git config --list // 顯示配置 // 列出所有 Git 當時能找到的配置 git config --list [--local | --global | --system]
local:區域本倉庫 global: 當前使用者的所有倉庫 system: 本系統的所有使用者
git config --local 只對某個倉庫有效 git config --global 對所有使用者的倉庫有效 git config --system 對系統所有登入的使用者有效
git config --list --global git config --list --system git config --list --local
// git config --get --get-all --get-regexp --get-urlmatch --replace-all --add --unset --unset-all --rename-section --remove-section --list or --l --edit or --e --get-color --get-colorbool ```
一些 Git 操作
建立版本庫:
mkdir repository
cd repository
通過使用 Git bash git init
命令把該目錄變成 Git
可以管理的倉庫,就是可以放程式碼的目錄了,好像糧倉一樣,很爽!!!
git add text
git commit -m "imformation"
``` git status 檢視倉庫狀態(告訴你有檔案被修改過) git diff 檢視修改過的內容 git status 提交後檢視狀態
// 版本和命令歷史 git log 檢視提交歷史 git reflog 檢視命令歷史
// 刪除檔案 $ git rm $ git commit -m "資訊"
// 誤刪 $ git checkout -- 返回原檔案
// 撤消操作-漏掉了幾個檔案沒有新增,或者提交資訊寫錯了-將暫存區中的檔案提交 $ git commit --amend
$ git commit -m 'initial commit' $ git add forgotten_file $ git commit --amend
// 打標籤 $ git tag v0.1 v1.3 ```
建立Git
倉庫
$ cd 專案程式碼所在目錄下的資料夾
$ git init
手把手教你如何把專案或程式碼提交到Github託管
從遠端庫克隆, 啟動 Git Bash
命令列
首先開啟你的github
,點選新建專案,點選new
repositories
,然後直接給專案命名就好了.
克隆倉庫的命令格式是
git clone [url]
$git clone git@.....git
開啟命令列,輸入下方:
複製地址就是:https://github.com/…./Test.git
點選這裡複製連結即可:
// 輸入
// 目錄下初始化一個 .git 資料夾
$ git clone https://github.com/…
$ cd test
前提下你得把你的專案複製放進test路徑下。
$ git add .
$ git commit -m “changes log”
$ git push origin master
注意如果每次修改完成後,如果沒有使用add
新增的命令,那麼修改的程式碼會在暫存區中,而直接使用commit
的話,是不會看到修改後的程式碼所在的.
總結:
mkdir 為建立資料夾
mkdir images 資料夾名為images
工作目錄
->
暫存區->
版本歷史
git add files 為從工作目錄中修改的程式碼放入暫存區
git commit 為從暫存區中修改的程式碼提交,變為版本歷史
li -al 遍歷檔案
git add -u 修改的檔案一起提交
git reset --hard 清除暫存區和工作區
// 重新命名檔案
git mv index index.md
git status
$ git status 先檢視
$ git add index.html images 新增暫存區檔案,可以多個檔名
$ git status 檢視是否提交
說明
如何看版本歷史
git log // 按提交時間列出所有的更新
// 使用不同於預設格式的方式展示提交歷史
$ git log --pretty=oneline
git log --online // 非常簡潔,有什麼歷史
// 簡略的統計資訊
$ git log --stat
// -2 僅顯示最近兩次提交
$ git log -p -2
git log -n4 --online 看最近的歷史訊息
git branch -v 看本地有多少分支
git checkout -b dashu 223343232 // 分支 , 修改分支
// ls -al
// git commit -am'test'
bit branch -av
git log --oneline --all // 分支所有呈現
圖形介面工具
gitk
輸入:
gitk
都可以進行了解學習
檢視
.git
目錄
ls -al // 列出列表
.git
cd .git
ls -al
cat .git // 檢視檔案
commit
每次的變更,tree
和blob
blob
指具體的某個檔案,blob
跟檔名沒關係,git
中blob
檔案內容相同就是一個東西.大樹包小樹,到檔案.
commit->
tree
parent
author
...
命令:
``` git cat-file -p 23452324 tree 23434323 parent author committer
git cat-file -p 23434323 tree blob 2324335 blob tree
git cat-file -p 2324335 ```
一個commit
由多少個tree
和blob
一個commit
,兩個tree
和一個blob
,和一個commit
.
``` commit tree parent author
tree tree doc tree blob readme
blob hello ```
文件:
https://git-scm.com/book/zh/v2
- 建立或者克隆一個倉庫
- 更改、暫存並提交
達叔小生:往後餘生,唯獨有你 You and me, we are family ! 90後帥氣小夥,良好的開發習慣;獨立思考的能力;主動並且善於溝通 簡書部落格: 達叔小生 https://www.jianshu.com/u/c785ece603d1
結語
- 下面我將繼續對 其他知識 深入講解 ,有興趣可以繼續關注
- 小禮物走一走 or 點贊
相關文章
- git的初步使用Git
- 初步學習VuexVue
- Mongoose初步學習Go
- SVG:初步學習感想SVG
- Python學習 —— 初步認知Python
- 初步學習jQuery之事件jQuery事件
- git的學習Git
- 系統學習 TypeScript(四)——變數宣告的初步學習TypeScript變數
- 《機器學習初步》筆記機器學習筆記
- 結合 Laravel 初步學習 GraphQLLaravel
- git學習之git rebaseGit
- java註解初步學習和使用Java
- Mybatis學習-初步認知與使用MyBatis
- 初步學習密碼系統的安全性密碼
- (學習筆記)python 對__init__的初步理解筆記Python
- Git 的特點—— Git 學習筆記 02Git筆記
- git worktree學習Git
- Git學習整理Git
- Workerman學習筆記(一)初步認識筆記
- 07.初步學習redis哨兵機制Redis
- Flask入門學習---初步瞭解模板Flask
- git checkout 和 git reset 的區別 —— Git 學習筆記 09Git筆記
- ARC136F - PGF 學習筆記初步筆記
- Golang學習筆記(十九):Channel初步接觸Golang筆記
- git學習筆記Git筆記
- Git&SourceTree學習Git
- Git簡單學習Git
- git 學習筆錄Git
- git學習之git reflog和git cherry-pickGit
- Git和Maven的學習筆記GitMaven筆記
- Git學習3 --- Git命令列基本操作Git命令列
- git(一):瞭解、學習、安裝gitGit
- Git 的安裝與初次使用 —— Git 學習筆記 03Git筆記
- Git 分支的建立與切換 —— Git 學習筆記 14Git筆記
- Unity3D學習筆記3——Unity Shader的初步使用Unity3D筆記
- git學習筆記 1Git筆記
- git學習筆記1Git筆記
- Git 學習日誌1Git