iOS開發源代碼管理之GIT簡介及創建Github代碼倉庫和HTTPs驗證

? ? ? 在我的上一篇文章《iOS開發源代碼管理之SVN簡介以及SVN服務器搭建》中,簡單的介紹了集中式源代碼管理工具SVN,那么本文就來介紹一下目前比較流行的一種開源源代碼管理工具git.

? ? ? GIT在國外非常流行,在國內也慢慢普遍,使用率越來越高。它是一種分布式的管理工具,那么這里有兩個概念,什么是集中式,什么又是分布式?

1.集中式

ComputerA想要服務器最新的代碼直接通過checkout向服務器下載

ComputerA在本地修改代碼后,直接提交到服務器

ComputerB想要服務器最新的代碼直接通過checkout向服務器下載

ComputerB在本地修改代碼后,直接提交到服務器

所有的內容統一交給服務器來進行管理


2.分布式

服務器本地有個代碼倉庫,從服務器更新代碼,上傳代碼

ComputerA想要服務器最新的代碼由本地代碼倉庫將服務器的代碼下載下來,再通過本地代碼倉庫的項目下載到ComputerA

ComputerA在本地修改完代碼后先提交到本地的代碼倉庫,再由本地的代碼倉庫提交到服務器

ComputerB操作與ComputerA相似

代碼的提交與更新首先會通過本地代碼倉庫,本地代碼倉庫再通過服務器,并不是直接交給服務器來進行管理

分布式和集中式的對比

? ? ?1. 在速度上,git可以先提交給本地,然后再提交給代碼倉庫,而SVN只能直接提交給代碼倉庫,所以在網絡出現狀況時,git就表現出了絕對優勢。

? ? ?2.SVN使用分支比較笨拙,需要先從tags中將代碼拷貝過來,修改后備份到分支,分支再與主干的項目合并。

? ? ?3.git可以輕松擁有無限個分支,輕松的在各個分支隨意切換。

? ? ?4. 舊版本的SVN會在每一個目錄置放一個.svn(目前svn1.7的只有一個.svn),git只會在根目錄擁有一個.git。 ?

GIT的使用的2種方法

1.命令行:常用的命令簡單且不多,直接使用命令行就行

2.圖形化界面工具

? SourceTree GitHub(SourceTree GitHub 3.xcode xcode對git的集成非常非常好,一般情況下, ? 直接使用xcode就行)

GIT的常用指令

git help:git指令幫助手冊 ? ? ? ?查看其他指令的做法:githelp其他指令

git config:git的配置信息相關(修改的是.git/config文件)

? ? ? ? ? ? ? ? 配置用戶名:git config “user.name”用戶名(用于跟蹤修改記錄)

? ? ? ? ? ? ? ? 配置郵箱:git config “user.email”郵箱(用于多人開發間的溝通)

? ? ? ? ? ? ? ? 設置指令的別名:git config alias.別名原指令名稱

? ? ? ? ? ? ? ? 將此設置應用到整個系統中:gitconfig––gloabal

? ? ? ? ? ? ? ? 查看配置信息:gitconfig–l

? ? ? ? ? ? ? ? 編輯配置信息:gitconfig–e(用vim編輯,:wq是退出vim編輯器)

git status:查文件的狀態

? ? ? ? ? ? ? ? 查看某個文件的狀態:git status文件名

? ? ? ? ? ? ? ? 查看當前路徑所有文件的狀態:git status

git log:查看文件的修改日志

? ? ? ? ? ? ? ? 查看某個文件的修改日志:git log文件名

? ? ? ? ? ? ? ? 查看當前路徑所有文件的修改日志:git log

? ? ? ? ? ? ? ? 用一行的方式查看簡單的日志信息:git log – –pretty=oneline

? ? ? ? ? ? ? ? 查看最近的N次修改:git log –N(N是一個整數)

git diff:查看文件最新改動的地方

? ? ? ? ? ? ? ?查看某個文件的最新改動的地方:git diff 文件名

? ? ? ? ? ? ? ?查看當前路徑所有文件最新改動的地方:git diff

git init:初始化一個空的本地倉庫,生成一個.git目錄,用于維護版本信息

? ? ? ? ? ? ? ?在當前路徑初始化倉庫:git init

? ? ? ? ? ? ? ?在其他路徑初始化倉庫:git init 倉庫路徑

git add:將工作區的文件保存到暫緩區

? ? ? ? ? ? ? ?保存某個文件到暫緩區:git add 文件名

? ? ? ? ? ? ? ?保存當前路徑的所有文件到暫緩區:git add .(注意,最后是一個點.)

git commit:將暫緩區的文件提交到當前分支

? ? ? ? ? ? ? ?提交某個文件到分支:git commit -m ”注釋”文件名

? ? ? ? ? ? ? ?保存當前路徑的所有文件到分支:git commit -m ”注釋”

git reset:版本回退(建議加上––hard參數,git支持無限次后悔)

? ? ? ? ? ? ? ?回退到上一個版本:git reset – –hard HEAD^

? ? ? ? ? ? ? ?回退到上上一個版本:git reset – –hard HEAD^^

? ? ? ? ? ? ? ?回退到上N個版本:git reset – –hard HEAD~N(N是一個整數)

? ? ? ? ? ? ? ?回退到任意一個版本:git reset – –hard 版本號(版本號用7位即可)

git reflog:查看指令使用記錄(能夠查看所有的版本號)

git rm:刪除文件(刪完之后要進行commit操作,才能同步到版本庫)

git clone:下載遠程倉庫到本地

? ? ? ? ? ? ? ?下載遠程倉庫到當前路徑:git clone 倉庫的URL

? ? ? ? ? ? ? 下載遠程倉庫到特定路徑:git clone 倉庫的URL存放倉庫的路徑

git pull:下載遠程倉庫的最新信息到本地倉庫

git push:將本地的倉庫信息推送到遠程倉庫

git rm:刪除文件(刪完之后要進行commit操作,才能同步到版本庫)

GIT的工作原理


1.svn開發工作在主干進行,git開發工作在分支中進行

2.通過add命令可以將工作目錄沒有被添加到暫緩區的文件添加到暫緩區


3.通過commit命令將暫緩區的所有內容上傳到當前分支,提交成功后清空暫緩區內容


遠程倉庫

? GIT服務器的搭建非常繁瑣,如果是多人團隊開發,最好還是搭建一個遠程倉庫

? ?搭建遠程倉庫的途徑

? ?1.自己搭建一個git服務器:費時費力

? ?2.在GitHub上托管項目:公開項目免費、私有項目收費,很多第三方開源項目

? ?3.在oschina上托管項目:完全免費,在國內訪問速度快(推薦使用)

?創建Github代碼倉庫和HTTPs驗證

? ?一.前提準備

? ?1.在GIT中創建一個Github文件夾演練的github

? ?二.登陸github網站github

三.創建遠程倉庫

1.點擊+ ->New repository

2.創建遠程代碼倉庫

3.創建后會來到此界面,將https的url復制下來

四.在Xcode中添加遠程倉庫

1.點擊Xcode的偏好設置

2.點擊添加倉庫

3.填寫服務器地址,源代碼管理類型,認證方式以及帳號密碼

4.看到以下界面說明認證成功

五.初始化項目

1.點擊Source Control -> checkout

2.選擇剛剛創建遠程倉庫

3.下載到指定位置

4.查看下載的內容

5.創建項目放到meituan工作目錄

6.將項目commit并push到遠程倉庫(Source Control -> commit)

7.瀏覽器查看倉庫里是否有該項目

六.開始開發

1.創建dog類commit并push到遠程倉庫(Source Control -> commit)

2.瀏覽器查看倉庫里是否有Dog類

創建代碼倉庫的時候選擇需要忽略的語言文件,在提交到服務器的時候,如果網絡不太好,可以先commit,之后再push到遠程服務器

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容