據說微信搜索《Java魚仔》會變動強!java
本文收錄於JavaStarter ,裏面有我完整的Java系列文章,學習或面試均可以看看哦git
(一)Git是用來作什麼的
若是你進入的是一家互聯網公司,那麼必定會聽到版本控制這個東西,所謂版本控制就是在開發過程當中對文件、代碼等內容的修改歷史進行記錄,方便查看、備份以及回滾歷史代碼。github
同時能夠用於管理多人協同開發項目,經過版本控制實現多我的並行開發,提升開發效率。面試
Git就是版本控制的一種實現,一樣的還有Svn等。windows
Git又能夠稱爲分佈式版本控制,全部的版本信息倉庫所有同步到每隔用戶的本地,能夠離線在本地提交,在有網絡的時候push到相應的服務器上便可。bash
(二)Git的使用
Git的使用通常都是用命令行,若是是windows電腦,安裝完成以後鼠標右鍵能夠看到git bash和git gui,建議使用git bash。mac電腦安裝完成以後直接在終端使用git命令便可。服務器
2.1 配置信息
#查看全部配置信息 git config --list #查看系統配置 git config --system --list #查看全局配置 git config --global --list
2.2 設置用戶名和郵箱
git config --global user.name "javayz" git config --global user.email "xxx@qq.com"
前面兩步屬於git安裝以後的配置部分,接下來介紹git的使用微信
2.3 初始化本地git倉庫
若是想把本地的某個文件夾變成git倉庫,只須要執行網絡
git init
2.4 克隆遠程倉庫
若是想把遠程倉庫的代碼下載到本地,只須要在某個目錄下執行ssh
git clone [url] git clone -b [branchname] [url]
其中-b表示克隆指定分支的代碼
2.5 提交文件三步曲
#添加文件到暫存區 git add filename #將暫存區中的文件提交到本地 git commit -m "提交信息" git push
咱們也可使用直接對代碼進行拉取和提交,更加方便。
(三)Git的工做原理
git中有四個重要的區域:
工做目錄(Working Directory):日常存放項目代碼的地方
暫存區(Stage):臨時存放改動
資源庫(Repsitory/Git Directory):提交的全部版本的數據
遠程倉庫(Remote Directory):代碼託管的平臺
工做目錄-->git add files-->暫存區-->git commit-->資源庫-->git push-->遠程倉庫
(四)Git忽略文件上傳
在主目錄下創建.gitignore文件能夠忽略提交某些文件
*.txt #忽略全部.txt結尾的文件 !a.txt #a.txt除外 temp/ #忽略temp目錄下的文件
(五)ssh免密登錄
ssh-keygen -t rsa -C "xxx@qq.com"
連續三次回車後在.ssh目錄下會生成一個id_rsa和id_rsa.pub,把id_rsa.pub中的字符串保存到gitee設置中的ssh公鑰中,便可免密提交下載代碼
(六)分支管理
分支是分佈式版本控制的核心,各個分支之間互相不關聯,基本上每次版本迭代都會建立一個新的分支出來。
#列出全部分支 git branch #列出全部遠程分支 git branch -r #新建一個分支,但依然停留在當前分支 git branch [branch-name] #新建一個分支,並切換到該分支 git checkout -b [branch] #合併指定分支到當前分支 git merge [branch] #刪除分支 git branch -d [branch-name] #刪除遠程分支 git push origin --delete [branch-name] git branch -dr [remote/branch]
(七)Git與Idea的集成
Idea自己就支持對Git的集成,當咱們clone一個項目到本地後,用Idea打開後會發現右上角多出了git的標誌:
第一個藍色箭頭表示把遠程倉庫的代碼pull到本地。
第二個綠色對勾表示提交代碼,勾選要commit和push的代碼,填寫提交信息,而後commit and push便可。
第三個鬧鐘形狀的是提交歷史,可查看歷史提交信息。
(八)總結
對於工做來講,只須要會用Idea提交拉取代碼便可。可是咱們須要瞭解git的工做原理。我是魚仔,咱們下期再見!