【7】版本管理神器——Git指令

本文是《程序猿叨叨叨》系列文章中的其中一篇,想要了解更多相關的文章,歡迎猛戳藍字前往閱讀。

在前面幾篇中,筆者曾多次和大家提到過Github網站,作為全球最大的同性交友網站,想必,各位小伙伴們也是迫不及待地在這個網站上找到自己的知己。如同在百合網相親一樣,我們需要上傳自己的個人信息供其他人了解,在Github上,代碼就是我們的名片。今天在Level 6的修煉道路上,我們來學習一下常用的git指令。

Git常用命令速查表

這張表包含了大部分我們上傳項目代碼時用到的命令,但是毫無頭緒地查看這張表,對于我們未接觸過Git的小伙伴們來說肯定是無從下手的,所以我們按照上傳一個項目的流程過一下我們使用的Git命令。

上傳代碼流程

  • 注冊Github賬號
    注冊Github賬號

點擊這里進行賬號的注冊,注冊過程在此不做過多講解,各位讀者們按照套路來即可。

  • 新建Github倉庫

    新建Github倉庫

    這里的倉庫指的就是Github網站上存放代碼的地方,點擊這里新建我們的項目,按套路填寫項目的相關信息,這里提一點:
    新建項目時有一個Initialize this repository with a README選項,如果勾選,會在新建項目過程中生成一個README.md的文件,md指的是Markdown文件,其作用是對我們的項目進行描述,以比較有名的ButterKnife為例,我們看到的下圖內容,就是通過README.md文件實現的,它出現在項目根目錄中,方便他人對我們的項目進行了解。
    QQ20161102-2.png

    新建完畢后,若出現如下圖所示,則我們新建項目完畢,我們可以看到我們的遠程(即Github項目網站上的,下同)項目文件結構:
    Github項目結構

  • 配置Git命令環境
    Git命令需要在對應的環境下才能使用,本節我們來下載配置Git命令環境,點擊這里進入Git下載頁面進行下載:

    git下載頁面

    下載安裝按套路一步一步來,安裝完畢后,Git命令環境也就搭建完成了。

  • 上傳本地工程代碼
    筆者開發安卓,所以上傳的代碼以安卓工程為例,打開命令行,進入項目根目錄,開始如下操作:

// 進入項目根目錄,當前項目名為Mitu,本地項目名和遠程倉庫的命長可以不一致
cd /Volumes/J_Eric/J_workRoom/AndroidStudio/MiTu
// 初始化本地項目的git,會在當前目錄下生成一個.git文件夾,所有的git配置都在其中
git init
// 建立遠程連接,項目連接可在Github相應目錄下得到,如下圖
git remote add origin https://github.com/inerdstack/MyFirstProject.git
// 添加賬戶信息:賬戶名
git config user.name "inerdstack"
// 添加賬戶信息:綁定的郵箱
git config user.email "wjnovember@gmail.com"
// 添加本地項目文件(夾子),"."或"-A"表示添加所有文件
// 若添加個別文件,可以輸入文件路徑,多個文件之間以空格隔開
git add .
// 添加本次提交描述
git commit -m "我的第一次提交"
// 因為我們遠程新建項目的時候,自動生成了README.md的文件
// 所以我們需要將遠程的文件先拉到本地,與本地文件進行合并比較
// master表示項目的分支,默認主分支(master)
git pull origin master
// 拉到本地后,進行核查,如果文件不存在沖突,則進行上傳,將本地項目推上去
git push origin master
得到遠程鏈接

至此,我們項目上傳完畢,可以在Github網站上看到工程文件:

遠程代碼

上面我們講解的是HTTPS的上傳方式,除此之外,我們還可以使用SSH的方式上傳,與HTTPS基本類似,其區別有以下兩點:

1.在git push命令前添加項目的deploy key:

Add deploy key

在Terminal中輸入:

// 生成key
ssh-keygen -t rsa -C "Github的注冊郵箱地址"
// 打開key文件所在的文件夾,默認路徑:~/.ssh
open ~/.ssh
.ssh文件

打開id_rsa.pub文件,復制所有內容,進入Github倉庫里的Deploy key設置頁面,點擊Add deploy key,在key項粘貼復制的內容,輸入好標題(隨意輸入)點擊Add key完成key的添加。

2.git remote add origin鏈接改為:

SSH

創建分支

在實際開發中,開發者會把上線的代碼和平時寫的代碼區分開,這時候需要創建一個分支(注意與默認的主分支master區別開),上線的代碼放到主分支上,平時的代碼每完成一個模塊就會放到新建的分支上。

創建分支分兩部分:

1. 遠程創建分支

遠程創建分支

在遠程的項目倉庫中,點擊branch,在輸入框輸入新分支的名稱,按回車鍵完成遠程分支的創建,新建的分支,其文件目錄與創建時master的文件目錄一樣。

2. 本地創建分支并上傳

打開Terminal,在本地項目根目錄下,實現如下操作:

// 創建一個新的分支
git checkout -b "debug"
// 拉分支上的代碼到本地,實現代碼同步
git pull origin debug
// 推本地的代碼到遠程的分支
git push origin debug

克隆工程

當工程項目上傳Github后,需要在另一臺設備上得到項目代碼,這時候我們可以使用克隆將遠程的代碼拿到本地,Terminal命令如下:

// 將遠程的倉庫克隆到本地
git clone https://github.com/inerdstack/MyFirstProject.git
// 若想遠程克隆分支上的代碼,則添加-b 分支名
git clone -b debug https://github.com/inerdstack/MyFirstProject.git

這里注意一下克隆過來的工程文件夾里面是不包含.git文件的,所以克隆過來的項目若要上傳Github需要重新按項目上傳流程走一遍。

分支合并

當項目上線時,次分支上的代碼會同步到主分支上,我們會用到分支的合并,打開命令行,進行如下操作:

// 將當前分值切換到主分支
git checkout master
// 將次分支的文件合并到主分支
git merge origin/debug

筆者使用上述指令合并了分支,但Github上的倉庫依然未顯示分支合并,debug分支上的文件未同步到主分支,對此表示不解,若各位讀者們知曉其中的錯誤,歡迎指正。對于分支的新建與合并,想要了解更多可點擊這里

以上即常用git指令的簡單操作,感謝大家的閱讀!

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

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,556評論 25 708
  • 帶著六月的鮮花,披著六月的陽光,六一的腳步近了,這天屬于我們的孩子,在這個快樂的日子里,所有的小朋友都在積極準備,...
    陳留張小學幼兒園閱讀 1,074評論 0 1
  • 難得老王有了興致陪我去看冰瀑,卻不巧出門便被鋪天蓋地的霧霾給震住了,的確,這樣的天氣是不適合戶外活動的。給組織者東...
    子玉央閱讀 397評論 2 1
  • 最近: 1.正在經歷人生中的,至少是目前人生中,最孤獨的時光。無人可訴,更無話可說,下載的電臺有幾個了,但是總覺得...
    十柳閱讀 124評論 0 0
  • 每年的春末夏初之際,人們總能聽見天空傳來聲聲酷似"天落水——天落水——”的鳥叫聲。 小的時候,每當聽得這穿透長空的...
    花不拾閱讀 3,448評論 0 1