說明:本文是介紹mac環(huán)境下如何將一個本地項(xiàng)目提交到Github上的
背景:這兩天寫了一個安卓Demo,是關(guān)于音樂播放器的,功能是可以從本地選取音樂,然后可以重復(fù)播放某一段的音樂,內(nèi)部是使用MediaPlayer實(shí)現(xiàn)的,已經(jīng)完成的差不多了,拿出來給大家分享一下,之前也提交過項(xiàng)目到github上過,不過步驟已經(jīng)忘了,現(xiàn)在重新整理一下步驟。
項(xiàng)目地址:https://github.com/jixinxinOOO/iClip
本文流程如下
準(zhǔn)備工作
1.在Github上注冊賬號
2.電腦安裝git客戶端
第一步:本地創(chuàng)建公鑰和私鑰
1.1:輸入git --version [查看git版本號,檢測當(dāng)前電腦是否安裝git客戶端]
查看當(dāng)前mac是否有安裝git客戶端,如果結(jié)果是:git version x.xx(git版本號),如果沒有,請手動安裝git客戶端,這里不再列出安裝過程??
1.2:輸入 cd ~/.ssh 查看是否配置ssh key
如果出現(xiàn) No such file or directory,說明之前沒有用過,忽略當(dāng)前操作,進(jìn)行下一步。如果之前用過需要清理原來的rss,終端輸入命令:mkdir key_backup
rm id_rsa*
1.3:配置郵箱及ssh。輸入ssh-keygen -t rsa -C 你的郵箱@qq.com,輸入y,一直回車
image.png密碼想輸入就輸入一個,不想輸入的話,就直接Enter
確認(rèn)完畢后,程序?qū)⑸梢粚γ荑€存放在以下文件夾:
/users/用戶/.ssh/密鑰分成兩個文件,一個私鑰(id_rsa)、一個公鑰(id_rsa.pub)。
私鑰保存在您的電腦上,公鑰交項(xiàng)目負(fù)責(zé)人添加到服務(wù)器上。用戶必須擁有與服務(wù)器公鑰所配對的私鑰,才能訪問服務(wù)器上的代碼庫。
第二步:向GitHub上設(shè)置自己的公鑰及創(chuàng)建新的倉庫
2.1:復(fù)制公鑰
執(zhí)行命令:pbcopy < ~/.ssh/id_rsa.pub 將公鑰的內(nèi)容復(fù)制到內(nèi)存里。[意思就是可以粘貼出來]
2.2:登錄GitHub,按下圖順序操作
imageimageimage若是多次設(shè)置公鑰則下圖所在位置
image
2.3: 測試連接是否成功
在終端輸入命令:ssh -T git@github.com
連接成功如下圖:imageimage
2.4:在github下建自己的Repository。
創(chuàng)建過程如下圖順序:
imageimage創(chuàng)建成功如下圖:
image
第三步:通過git上傳代碼到github
在GitHub上的這個倉庫還是空的,我們可以把一個已有的本地倉庫與之關(guān)聯(lián),然后,把本地倉庫的內(nèi)容推送到GitHub倉庫。
現(xiàn)在先把本地的項(xiàng)目通過git上傳到github上。
步驟 | 終端常用命令 | 作用 |
---|---|---|
1 | git init | 給X項(xiàng)目創(chuàng)建Git倉庫 |
2 | git add * | 把X項(xiàng)目文件添加到Git倉庫 |
3 | git commit -m “注釋” | 把X項(xiàng)目文件提交到本地Git倉庫 |
4 | git remote add origin SSH key(SSH key:根據(jù)項(xiàng)目定) | 本地倉庫關(guān)聯(lián)遠(yuǎn)程倉庫 |
5 | git pull origin master - -allow-unrelated-histories | 拉取遠(yuǎn)程倉庫的代碼,然后強(qiáng)制合并 |
6 | git push -u origin master | 將本地項(xiàng)目推到遠(yuǎn)程倉庫 |
說明:以上所有的終端命令都是在要上傳項(xiàng)目的根目錄下進(jìn)行的;
3.1:在iClip項(xiàng)目目錄下創(chuàng)建Git倉庫
- 終端輸入命令:cd 項(xiàng)目目錄 ,跳轉(zhuǎn)到項(xiàng)目目錄,
- 終端輸入命令:git init,瞬間Git就把倉庫建好了,而且告訴你是一個空的倉庫(empty Git repository)
image
- 終端輸入命令:ls -all,看到這個目錄下的內(nèi)容
image當(dāng)前目錄下多了一個.git的目錄,這個目錄是Git來跟蹤管理版本庫的,沒事千萬不要手動修改這個目錄里面的文件,不然改亂了,就把Git倉庫給破壞了。如果你沒有看到.git目錄,那是因?yàn)檫@個目錄默認(rèn)是隱藏的,用ls -ah命令就可以看見。
注意:也不一定必須在空目錄下創(chuàng)建Git倉庫,選擇一個已經(jīng)有東西的目錄也是可以的。我這個目錄有項(xiàng)目存在。
3.2:把iClip項(xiàng)目文件添加到Git倉庫
終端輸入命令:
image終端沒有任何顯示,說明添加成功
說明:用命令git add告訴Git(可以使用git add file git add /* 或者 git add *),把文件添加到倉庫, git add可反復(fù)多次使用,添加多個文件。執(zhí)行g(shù)it add *,沒有任何提示,說明添加成功。使用命令git add * 會錯誤如下圖
image
3.3:把iClip項(xiàng)目文件提交到本地倉庫
終端輸入命令:git commit -m "注釋"
如下圖所示,表示commit成功。
image
3.4:關(guān)聯(lián)遠(yuǎn)程庫
在本地的wangjdemo倉庫下: 終端輸入命令:
git remote add origin git@github.com:jixinxinOOO/iClip.git
沒有任何提示,表示添加遠(yuǎn)程庫成功。
image
image.png說明:命令的格式:git remote add orgin SSH Key ;
origin是Git對遠(yuǎn)程庫的默認(rèn)叫法,可以更改,是SSH Key的別名;
SSH Key是需要去GitHub上對應(yīng)項(xiàng)目的【Clone or download】復(fù)制的。
3.5:拉取遠(yuǎn)程庫的代碼到本地,保證拿到服務(wù)器最新代碼
終端輸入命令:git pull origin master --allow-unrelated-histories,拉取遠(yuǎn)程代碼到本地
出現(xiàn)下圖:
image
如果出現(xiàn)如下圖:image.png【我的出現(xiàn)這個錯誤,是因?yàn)橹皠?chuàng)建的.git文件和現(xiàn)在調(diào)用命令git init里面可能有沖突吧,我手動吧.git文件刪除后,這一步驟可以正常提交了】
但是又出現(xiàn)了這個錯誤image.png有文件沖突,需要整合一下,它提示我刪除文件,我就調(diào)用了git命令
rm .gitignore,刪除了.gitignore文件
然后重新調(diào)用 git pull origin master --allow-unrelated-histories,這行命令,把文件提交到遠(yuǎn)程倉庫,然后成功了,截圖如下image.png
這個時候需要退出這個命令行輸入“:wq”退出輸入終端,終端顯示如下:
image
3.6:提交本地代碼到遠(yuǎn)程倉庫。終端輸入命令:git push -u origin master,這樣才能在github上看到自己的項(xiàng)目
提交成功如下圖
image
結(jié)束
這樣第一次成功的把代碼提交到了github上了,后續(xù)的更新代碼及相關(guān)放到另一個文章中介紹吧,這次的目標(biāo)已經(jīng)實(shí)現(xiàn)啦。
參考文章:http://www.lxweimin.com/p/5a1d9a248ea4
iClip項(xiàng)目地址:https://github.com/jixinxinOOO/iClip