Git教程(二)-如何上傳和同步自己的git項目

 

本文來自http://blog.csdn.net/liuxian13183/ ,引用必須註明出處!

 

Git接觸並使用多年, 工作中使用較多,它的分佈式存儲,使每個人的電腦均爲服務器的策略非常棒;再加上使用Rsa加密,使得項目可以被自己管理,大衆任意提交Pr進行完善,最後自己合併分支,使得Git成爲當今計算機界最爲流行的版本管理工具。

 

關於Git的日常應用,有的同事喜歡用GitFlow來界面化管理,而我更傾向於用TorteriseGit和GitBash命令行來操作,簡單、便捷、趣味性是博主挑選工具的幾個關鍵字。一般情況下用於公司項目管理,業餘也喜歡自己做點東西,放到Git上,比如自己經常做的測試代碼片段,如果用Zip包來管理,那麼家裏和公司如何同步,離職後代碼如何跟新公司同步,很容易就想到GitHub,而Csdn和碼雲也有這樣的功能,但Github聲名日久,經典方便,所以選擇它。

 

再介紹一下自己經常做的代碼片斷,從工作至今有很多,但較多被遺忘;主要用來測試某些想法,如算法、基本數據類型、多線程、讀寫流等方面,最終組成項目ThinkingInJava,地址:https://github.com/LiuzxGeek/ThinkingInJava

 

前面呢,其實已經有過一篇,不過覺得介紹的相對粗略,不夠完善,本次將教程再豐富一下。Git教程及問題解析

 

先說上傳:

第一步、下載Git工具,無論GitFlow還是TorteriseGit或GitBash,推薦使用後兩個

第二步、右擊項目-選擇gitbash,配置用戶名和郵箱,用於提交時表明身份,git config user.name/email "name/email"

第三步、生成公、私鑰,ssh-keygen -t rsa -C "如前面你的email"。將公鑰放入GitHub,自己握有私鑰,用於通信。

第四步、將公鑰內容拷貝出來,放入Github-頭像右邊箭頭-選擇Settings-SSH and GPG keys-new SSH key-命名並放入

第五步、項目右擊Git bash 執行git init(初始化)、git add .(將全部文件加入版本管理)和git commit -m "提交解釋"

第六步、在Github下,new respsitory,新建名字爲ThinkingInJava的項目,保存即可

第七步、繼續在命令行輸入 git push --set-upstream [email protected]:LiuzxGeek/ThinkingInJava.git master

 

至此,上傳成功!

另一種生成公、私鑰的方法:

第一步、使用puttygen.exe,生成同步最需要的ppk文件,選擇save private key(ppk文件,用於同步代碼),save public key並不是我們要的公鑰,而是public key for pasting into OpenSSH authorized_keys file:下面框裏的內容,將它作爲公鑰保存下來。

第二步、在空白處,git clone,出現如下圖文件,選擇load putty key-“使用上一步的ppk文件”(以後就不用輸入用戶名、密碼,直接拉代碼)。

第三步、選用,如果不想用git命令一直敲,可以用。選擇項目,git Sync出現下圖

點擊Manage,將如下內容填入

 

 

如何同步遠程分支,用來Merge代碼?

1、進入項目目錄,右鍵選擇TortoiseGit中的merge選項,出現如下界面

 

2、點擊這個“...”按鈕,出現如下界面

 

3、右鍵remotes的項目名稱,選擇fetch from "項目名稱"即可

git fetch origin
git merge origin YOUR_BRANCH_NAME
git pull origin YOUR_BRANCH_NAME

至此,全部教程已經完畢,你可以流暢的上傳、下載、同步代碼了,如果有其他問題,歡迎評論!

對了,本教程同步可以用於多個賬號同時上傳,只需要公私鑰和ppk命名不同即可,email和name作爲私人項目,可改可不改。

Github上傳代碼實例:

echo "# Art-Guide" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/LiuzxGeek/Art-Guide.git
git push -u origin master

…or push an existing repository from the command line
git remote add origin https://github.com/LiuzxGeek/Art-Guide.git
git push -u origin master

問題1:TortoiseGit拉取代碼,一直提示輸入密碼?

修改項目地址從“http”開頭的,換到"git"開頭的地址。

 

問題2:git push origin master ,提示github permission denied  fatal could not read from remote

修改項目地址從“git”開頭的,換到"https"開頭的地址。

 

問題3:Key has already been taken Fingerprint has already been taken

選中項目-Settings->Deploy Keys 刪除所有的keys

 

問題4:fatal: Authentication failed

我的電腦,找到“控制面板\所有控制面板項\憑據管理器\Windows憑據”,刪除該網址的“普通憑據”

可能原因:gitlab登錄後,相應的密碼信息,被憑據管理器緩存;在你更換“網站密碼”後,“新密碼”未被及時更新。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章