Android 首次提交到Git

轉(zhuǎn)自:http://blog.csdn.net/mylizhimin/article/details/53415686

首先準備工作git客戶端和as客戶端是不可少的工具,本次使用的是as2.2.2和git2.10.2欠气;

git:https://git-scm.com/downloads

下載安裝后在as里面關(guān)聯(lián)上,點test可以測試一下,彈出版本就說明關(guān)聯(lián)成功

下面我分享三種操作方式,以界面交互為主恋日,git命令為輔。

首先說明一點嘹狞,github算是git服務器的一種岂膳,另外還有很多可能會使用到的git服務器,比如常用的GitLab磅网,或者csdn的代碼托管服務等等谈截,都是大同小異。這里以github為例涧偷,但是as里面是可以直接share 到github簸喂,其他地方貌似不可以直接share,參見第三種方法燎潮;前兩種是都可以通用的喻鳄。

方法一:先創(chuàng)建項目,后與git連接

1确封、首先我們創(chuàng)建一個測試項目GitTest诽表,點擊VCS--Enable Version Control

Integration,在彈出框右邊選上Git隅肥。這個時候會發(fā)現(xiàn)項目會發(fā)生幾點變化,鼠標右鍵點擊項目出現(xiàn)Git選項竿奏;項目文件顏色變?yōu)榧t色;在as右下角出現(xiàn)Git:master腥放;如下圖:

圖1-1

圖1-2

圖1-3

2泛啸、在github上創(chuàng)建遠程代碼倉庫GitTest,注意這里名字可以和項目名字不一樣秃症;登錄github候址,進到個人主頁吕粹,點擊切換到Repositories,然后點new創(chuàng)建岗仑∑ジ可以寫上描述,選擇公開或私有荠雕,也可以選擇為項目添加一個README說明文件稳其,如下圖:

圖2-1

圖2-1

3、切回as炸卑,那么在提交項目之前要做一件很重要的事情既鞠,就是配置好gitignore文件,我們將項目展開會發(fā)現(xiàn)as已經(jīng)幫我們生成了gitignore文件盖文,在項目根目錄有一個嘱蛋,在app目錄也有一個;那么在app

模塊里面很簡單只有一行/build五续,這個我們不用管洒敏,那么在項目根目錄的gitignore文件里面的內(nèi)容我們可以看一下

圖3-1

切換到project模式下我們會發(fā)現(xiàn),項目中的文件并不是都變紅了疙驾,有的是白色的凶伙,那么這些沒有變紅的文件就是被這個gitignore文件忽略掉的,那么我們關(guān)心的是哪些文件應該被忽略掉哪些文件不應該忽略荆萤?是as能在編譯過程中自動生成的文件都不應該提交上去镊靴;也就是說我傳上去的代碼,別人拉取下來通過as編譯能夠正常跑起來链韭,并且這個時候本地不產(chǎn)生可以提交的文件偏竟;這些文件主要包括.idea、.gradle敞峭、iml文件踊谋、以及配置sdk路徑的local.properties等等,as為我們自動生成并不是很全面旋讹,這里推薦一個github上列出來的https://github.com/github/gitignore/blob/master/Android.gitignore我們也可以使用這個殖蚕。這個文件之前是把整個.idea文件夾都忽略的,后來又改成只忽略其中部分文件沉迹,不知道為什么睦疫,我認為只要是可以自動生成的就可以忽略,即時每個人生成的都一樣鞭呕。

4蛤育、準備好了之后下面開始提交代碼了,在項目根目錄上右鍵Git-->Add將代碼添加到索引庫,然后Git-->Commit Directory提交到本地倉庫瓦糕;到此為止我們依然沒有和github聯(lián)系上底洗;

5、將代碼push到遠程倉庫Git-->Repository-->push到遠程倉庫咕娄,在彈出框里面輸入之前創(chuàng)建的git遠程倉庫地址https://github.com/AndSync/GitTest.git亥揖,點OK,如果沒登錄會提示登錄圣勒,以前登錄過就不提示了费变,完了之后點push。

圖5-1

這時候在右上角會有一個提示push rejected

灾而,原因是我們本地倉庫的master主線并沒有和遠程倉庫的master主線綁定上胡控,那么首先Git->Repository-->fetch一下扳剿,獲取到遠程master分支旁趟,這時候發(fā)現(xiàn)右下角有變化了,顯示出來了origin/master,

圖5-2

然后我們需要通過命令來完成綁定庇绽,在Terminal里面可以輸入命令锡搜,這段命令怎么來的,其實如果你不用as可視化工具 而是用命令去 git push 的話是會提示給你的瞧掺,告訴你應該輸什么命令耕餐,git還是很智能的,建議還是多用命令來操作辟狈。

git branch --set-upstream-to origin/master

然后我們再去push 這時候可以了肠缔,會彈出一個merge提示框,我們點merge又報錯了哼转,哦是不是因為創(chuàng)建項目的時候有一個文件README明未,那我們pull一下看行不行,發(fā)現(xiàn)也報錯壹蔓,于是我們要祭出另一句git命令來解決這個問題

圖5-3

git pull --allow-unrelated-histories

允許拉取不相關(guān)的歷史記錄趟妥,把README拉取過來了,當然如果你創(chuàng)建項目的時候沒有創(chuàng)建README可能沒這么麻煩佣蓉,這時再去push就OK了披摄。整個過程到此結(jié)束

方法二:先創(chuàng)建連接,后創(chuàng)建項目

這個怎么玩的呢勇凭,簡要說明一下疚膊,之前不是有安裝git客戶端,應該在任何地方鼠標右鍵都有一個菜單Git Gui here -->Clone Existing Repository

注意本地路徑文件夾GitTest2事先不要創(chuàng)建

clone完了之后虾标,在這個目錄下會有一個.git文件夾寓盗,和readme文件,那么到這一步我們也可以發(fā)現(xiàn)這種方式貌似并不適用于新建項目,因為這個文件夾里面有文件as將無法在這個目錄下創(chuàng)建文件贞让,那么這適用于從別的地方考過來一個已有的項目放到這里周崭,之后從as打開項目進行add、commit喳张、push等操作即可续镇。

方法三:直接share到github

很簡單,無需先在github上創(chuàng)建項目销部,直接share摸航,如果需要修改gitignore文件可以先修改下。

1舅桩、VCS-->import into Version Vontrol-->Share Progect on Github

2酱虎、登錄帳號

3擂涛、填寫信息

1.error:src refspec master does not match any

引起該錯誤的原因是读串,目錄中沒有文件,空目錄是不能提交上去的

解決方法

touch README

git add README

git commit -m 'first commit'

git push origin master

2.fatal: remote origin already exists.

1撒妈、先刪除遠程git倉庫

$ git remote rm origin

2恢暖、再添加遠程 Git 倉庫

$? git remote add origin git@github.com:FBing/Java-code-generator

如果執(zhí)行 git remote rm origin 報錯的話,我們可以手動修改gitconfig文件的內(nèi)容

$ vi .git/config? ? ? ? ? ? 把 [remote “origin”] 那一行刪掉就好了狰右。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末杰捂,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子棋蚌,更是在濱河造成了極大的恐慌嫁佳,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,430評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谷暮,死亡現(xiàn)場離奇詭異蒿往,居然都是意外死亡,警方通過查閱死者的電腦和手機坷备,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評論 3 398
  • 文/潘曉璐 我一進店門熄浓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人省撑,你說我怎么就攤上這事赌蔑。” “怎么了竟秫?”我有些...
    開封第一講書人閱讀 167,834評論 0 360
  • 文/不壞的土叔 我叫張陵娃惯,是天一觀的道長。 經(jīng)常有香客問我肥败,道長趾浅,這世上最難降的妖魔是什么愕提? 我笑而不...
    開封第一講書人閱讀 59,543評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮皿哨,結(jié)果婚禮上浅侨,老公的妹妹穿的比我還像新娘。我一直安慰自己证膨,他們只是感情好如输,可當我...
    茶點故事閱讀 68,547評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著央勒,像睡著了一般不见。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上崔步,一...
    開封第一講書人閱讀 52,196評論 1 308
  • 那天稳吮,我揣著相機與錄音,去河邊找鬼井濒。 笑死灶似,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的眼虱。 我是一名探鬼主播喻奥,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼席纽,長吁一口氣:“原來是場噩夢啊……” “哼捏悬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起润梯,我...
    開封第一講書人閱讀 39,671評論 0 276
  • 序言:老撾萬榮一對情侶失蹤过牙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后纺铭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寇钉,經(jīng)...
    沈念sama閱讀 46,221評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,303評論 3 340
  • 正文 我和宋清朗相戀三年舶赔,在試婚紗的時候發(fā)現(xiàn)自己被綠了扫倡。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,444評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡竟纳,死狀恐怖撵溃,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情锥累,我是刑警寧澤缘挑,帶...
    沈念sama閱讀 36,134評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站桶略,受9級特大地震影響语淘,放射性物質(zhì)發(fā)生泄漏诲宇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,810評論 3 333
  • 文/蒙蒙 一惶翻、第九天 我趴在偏房一處隱蔽的房頂上張望姑蓝。 院中可真熱鬧,春花似錦吕粗、人聲如沸它掂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽虐秋。三九已至,卻和暖如春垃沦,著一層夾襖步出監(jiān)牢的瞬間客给,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評論 1 272
  • 我被黑心中介騙來泰國打工肢簿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留靶剑,地道東北人。 一個月前我還...
    沈念sama閱讀 48,837評論 3 376
  • 正文 我出身青樓池充,卻偏偏與公主長得像桩引,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子收夸,可洞房花燭夜當晚...
    茶點故事閱讀 45,455評論 2 359

推薦閱讀更多精彩內(nèi)容

  • today i was told a news that could be worse in the fuking...
    玄鯉清閱讀 377評論 2 0
  • 一.培訓就是最大的福利 每個人的心中都一個濃濃的愛國情結(jié)坑匠,因為人需要歸屬感,需要一個強大的依靠卧惜。其實厘灼,我們領航的每...
    聶小紅閱讀 2,439評論 4 13
  • 翻盤的夢想 如果buff沒被對面打野狠狠收下 又怎會懂得 自家瞎子 鍵盤上沒有R 如果中單沒被對面輔助各種單殺 又...
    尋夢拾遺閱讀 736評論 14 8
  • https://github.com/kailuo99/http-api-design-ZH_CN
    liu_bo閱讀 235評論 0 1