Git 簡介
標簽: Git
下載Git
Git配置
$ git config --global user.name "your_name"
$ git config --global user.email "your_email"
查看Git配置
git 的設置使用 git config 命令
顯示當前的 git 配置信息:
$ git config --list
Git工作流程
- 克隆Git資源作為工作目錄
- 在克隆的資源商添加或修改文件
- 如果其他人修改了,你可以更新資源
- 在提交前查看修改
- 提交修改
- 在修改完成后,如果發現錯誤,可以撤回提交并再次新修改并提交
Git工作流程:
Git工作區、暫存區和版本庫
-
工作區:就是在電腦里能看到的目錄
-
暫存區:英文叫stage或index。一般存放在 .git 目錄下的index文件(.git/index)中,所以我們把暫存區有時也叫索引(index)。
-
版本庫:工作區有個隱藏目錄 .git ,這個不算工作區,而是Git版本庫。
-
圖中左側為工作區,右側為版本庫。在版本庫中標記為 “index” 的區域是暫存區(stage/index),標記為 “master” 的是 master 分支所代表的目錄樹。
-
圖中我們可以看出此時 “HEAD” 實際是指向 master 分支的一個"游標"。所以圖示的命令中出現 HEAD 的地方可以用 master 來替換。
-
圖中的 objects 標識的區域為 Git 的對象庫,實際位于 “.git/objects” 目錄下,里面包含了創建的各種對象及內容。
-
當對工作區修改(或新增)的文件執行 git add 命令時,暫存區的目錄樹被更新,同時工作區修改(或新增)的文件內容被寫入到對象庫中的一個新的對象中,而該對象的ID被記錄在暫存區的文件索引中。
-
當執行提交操作(git commit)時,暫存區的目錄樹寫到版本庫(對象庫)中,master 分支會做相應的更新。即 master 指向的目錄樹就是提交時暫存區的目錄樹。
-
當執行 git reset HEAD 命令時,暫存區的目錄樹會被重寫,被 master 分支指向的目錄樹所替換,但是工作區不受影響。
-
當執行 git rm --cached 命令時,會直接從暫存區刪除文件,工作區則不做出改變。
-
當執行 git checkout . 或者 git checkout – 命令時,會用暫存區全部或指定的文件替換工作區的文件。這個操作很危險,會清除工作區中未添加到暫存區的改動。
-
當執行 git checkout HEAD . 或者 git checkout HEAD 命令時,會用 HEAD 指向的 master 分支中的全部或者部分文件替換暫存區和以及工作區中的文件。這個命令也是極具危險性的,因為不但會清除工作區中未提交的改動,也會清除暫存區中未提交的改動。
智能推薦
.git文件簡介
.git文件簡介 git init的文件顯示 git clone的文件顯示 當git init的文件夾進行第一次commit操作之后兩者的文件就會變得相同: 文件以及作用: hooks 存放一些shell腳本,他的實現的功能是與響應的git動作相關,相關文檔請看這里~ info 存放一些信息,其中保存了一份不希望在 .gitignore 文件中管理的忽略的全局可執行文件 logs 記錄了本地倉庫和...
咸魚筆記—git簡介
咸魚筆記—git簡介 git簡介 git的兩大特點 安裝與配置 創建一個版本庫 新手剛接觸python,跟著教程學的,僅供參考。歡迎各路大神指點。 學習版本: Django 1.8. Python 3.5 git簡介 Git是一個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理。 Git 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開...
Git簡介和使用
版本控制: 集中式與分布式: 3. Git詳解 Git的基本操作 一、配置 新建并進入目錄 初始化 查看git 配置連接(ssh key) 1.生成ssh key: ssh-******.exe -t rsa 2.進入**對生成目錄(上圖的目錄) 3.打開id_rsa.pub,拷貝內容并復制到github.com 二、操作文件 新建reademe.txt 寫入內容保存后查看狀態 向git本地倉庫添...
Git簡介和操作
簡介Git Git能做什么 Git是當下使用最多的代碼版本管理系統,有如下功能: Git的原理 Git工具 客戶端: 1、Git命令行工具:https://git-for-windows.github.io/ 2、Git的可視化工具:https://tortoisegit.org/ 3、IDEA內置的Git插件 最實用的是命令行工具,其次IDEA插件,可視化工具意義不大 服務端: GitHub網站...
猜你喜歡
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...
Linux C系統編程-線程互斥鎖(四)
互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...