學習宗旨:快速應用,不易忘記
很遺憾,申請Git的專欄未審批,那我就不再寫專欄了,把最近的學習心得寫一下,我也是在學習中進行,有任何問題直接留言,回覆交流,我還採用思路+實踐模式快速過。
目錄
1、Git 是什麼
Git是一個開源的分佈式版本控制系統,用於敏捷高效地處理任何或小或大的項目。MS平臺流行的是VSS,SVN用的人也比較多。Git是開發Linux的Linus大神爲了Linux的版本控制的時候花一個月時間開發的,後來上線了GitHub,追求開源精神,所以全是免費的,當然GitHub免費的僅限於公開項目,收費的可用於私有項目。
特別提醒:前段發生酒店泄露的開房記錄的事件據說就源於軟件開發人員把項目Push到Github,因爲Github項目是開放的,而開發人員沒有修改直接把“數據庫、用戶名及密碼”開源了,後果你懂的。所以使用GitHub一定注意自己項目的安全性。
2、遠程倉庫
最出名的遠程倉庫莫屬於:GitHub,但是還是上面紅色內容,特別注意。除了國際流行的GitHub,再推薦一個國內好用的:Gitee
1)GitHub:
優點:免費,用的人應該是最多的。
缺點:不願付費的話你就公開項目。速度相對慢(畢竟服務器沒在國內)。
2)Gitee(碼雲):
優點:免費,國內的速度快,可以團隊應用(5人以內),多再付費。
缺點:還不清楚。
3、安裝Git(Windows)
1)下載
官網地址:https://git-scm.com/downloads/ (默認會自動下載你係統對應的,也可以自己選擇下載)
2)安裝
雙擊,一路下一步(注意下方,強烈強烈強烈建議安裝:命令行及圖形模式)
3) 完成。
4、Git 基本工作流程及配置
Git是對文件的修改進行跟蹤,主要是文本文件,Word是特殊的文本文件(二進制),所以對Word,EXE、音視頻等無法跟蹤其變動。
1)Git工作區域
2)向庫中添加文件流程
3)Git配置
Git使用必須得設置名稱及郵箱,這個表示自己的身份,所以先設配置本機的用戶信息(兩種方式)
命令行:
git config --global user.name "your name"
git config --global user.email "[email protected]"
GUI: Edit - options打開的對話框中左上角就是上面命令行的內容。
提醒:把編碼改成UTF-8
5、Git教程正式開始
以下操作全部都是命令行+Gui的操作,建議都練練,畢竟GUI好記,到Linux上還是用Bash(命令行)
1)初始化
命令:git init
2)暫存到工作區
命令行的方式是你必須知道改動了哪個文件,然後按命令行的方式直接add到工作區。
命令:Git add filename
GUI的好處是,你可以直接點擊“Rescan"就能發現所有改動文件,包括刪除的。
提示:工作區只能一個一個文件添加,命令行後面可以一次性多個,但必須分着寫文件名。
3)提交到倉庫
命令:git commit ‘描述’
6、遠程倉庫及Clone項目
建議:先從遠程建一個倉庫,然後再克隆的本地,再進行後續的修改,提交。
遠程項目庫有兩種連接方式:https和ssh
https:需要每次都輸入賬號密碼,速度還慢,用https://開頭。
ssh:如果是自己電腦,用SSH方式,用git@開頭
1)認識遠程項目的下載方式
Zip是直接下載項目的壓縮包;另外SSH和Https就是用Git工具下載:
2)克隆項目到本地
A:創建SSH Key
命令行: ssh-keygen -t rsa -C "[email protected]"
GUI生成,非常簡單:
將生成的ssh-rsa開頭的所有內容複製,見B步驟;
B:設置SSH Key
打開github.com,並用你的賬號登錄(註冊過程省略)
3)提交項目到遠程倉庫
提示成功後到Github去刷新,OK。失敗注意看提示。
7、Git GUI 技巧
1)命令行圖形化
舉例:操作日誌命令爲:git reflog,但是GUI是沒有這個的。我們就自定義這個圖形化的功能:
主界面菜單:Tools -- Add...
上面是舉例,當然你可以添加任何命令,以後點:Tools就能看到這個中文,點擊後就是執行了這個命令的結果,上面這個非常有用,因爲這個可以讓你穿越不同版本(已刪除或當前版本以後的版本中)
2)查看所有文件改動:
主界面第一個菜單:Respository -- Visualize master's History 是顯示master主線的所有版本歷史。
主界面第一個菜單:Respository -- Visualize All Branch History 是顯示所有分支的所有版本歷史。
3)版本之間穿越
Respository -- 選中要穿越的版本號,右鍵:Reset master branch to here。在彈出的窗口中選“Hard"選項即切回到選中的版本。
技巧:如果把軟件關掉或重啓電腦後你再想回到之後的版本,這裏沒有之後的版本信息,所以你是沒法回去的,幸運的是,這就是技巧,用技巧1中的查看日誌,找到你後來的日誌的Commit ID,然後只能執行命令了,方式:Git GUI菜單Repository - Git Bash。直接執行命令:git reset hard commitid
命令:git reset --hard commitID #commitID 前5位即可
8、關於分支Branch
此部分內容因爲當前幾乎不用,所以暫時不寫了,等用到回來更新。
分支的邏輯這麼理解:默認的master可以理解成公司對外發布版本,這個可以定義1.0,2.0等,可以用(Tag)。如果再加一個功能,但是這個功能我得做幾天,爲了不影響正常發佈,那就建立一個分支如:dev,然後你只管開發,等你覺得差不多了,再把Dev和master做合併,之後就刪除Dev分支。
多人協同開發也是一個道理,各自創建分支,然後合併到發佈預覽分支(即負責人進行合併),沒問題再進行發佈。
9、Pychram中的版本控制功能
首先你也需要先安裝Git,然後在設置 - 版本控制(VCS) 中選擇Git,關鏈,這樣Add,Commit功能在項目中就有了,直接右鍵,上面的是思路和方式,瞭解後不管是在Bash還是GUI還是Pycharm等其它環境中,套路都是一樣的。