1. 程式人生 > ><轉>github入門到上傳本地項目

<轉>github入門到上傳本地項目

style 麻煩 private glob 提交代碼 創建桌面快捷方式 tegra 公司 dns

轉自 http://www.cnblogs.com/specter45/p/github.html

GitHub是基於git實現的代碼托管。git是目前最好用的版本控制系統了,非常受歡迎,比之svn更好。

GitHub可以免費使用,並且快速穩定。即使是付費帳戶,每個月不超過10美刀的費用也非常便宜。

利用GitHub,你可以將項目存檔,與其他人分享交流,並讓其他開發者幫助你一起完成這個項目。優點在於,他支持多人共同完成一個項目,因此你們可以在同一頁面對話交流。

創建自己的項目,並備份,代碼不需要保存在本地或者服務器,GitHub做得非常理想。

學習Git也有很多好處。他被視為一個預先維護過程,你可以按自己的需要恢復、提交出現問題,或者您需要恢復任何形式的代碼,可以避免很多麻煩。Git最好的特性之一是能夠跟蹤錯誤,這讓使用Github變得更加簡單。Bugs可以公開,你可以通過Github評論,提交錯誤。

在GitHub頁面,你可以直接開始,而不需要設置主機或者DNS。

對於我來說,我可以在公司和家編輯同樣的一套代碼了,用U盤或者網盤都好麻煩的說

理論說太多容易忘,來實踐實踐吧。

大綱:

  一、創建github repository(倉庫)   二、安裝git客戶端   三、為Github賬戶設置SSH key   四、上傳本地項目到github

一、創建github repository(倉庫)

1-1 登錄github

github的官方網址:https://github.com ,如果沒有賬號,趕緊註冊一個。

技術分享

點擊Sign in進入登錄界面,輸入賬號和密碼登入github。

技術分享

1-2 創建repository(倉庫)

為啥要叫repository(倉庫)?我起初也納悶,叫代碼庫不更簡單明了麽? 但仔細一琢磨,倉庫一般都是放糧食的吧,這是把代碼當作飽腹之物,多有愛,瞬間覺得這冰冷冷的代碼充滿了查克拉。

扯遠了,來看怎麽創建倉庫,登錄後可以看到有repository選項卡

技術分享

如果沒在這個頁面也沒關系,點擊右上角的頭像旁邊的小三角,展開後可以看到Your profile,點擊進入後也能看到repository

技術分享

切換到repository選項卡,可以看到很醒目的new按鈕。不用猶豫,點擊它,開始創建自己的糧倉了。

技術分享

下面是創建倉庫信息,只有名字是必填項,現在我創建了一個倉庫叫:beautifulDay

技術分享

創建成功後,可以看到自己的倉庫地址,如此,我的遠程免費的倉庫就創建了。它還介紹了github倉庫的常用指令。這個指令需要在本地安裝git客戶端。

  git init //把這個目錄變成Git可以管理的倉庫   git add README.md //文件添加到倉庫   git add . //不但可以跟單一文件,還可以跟通配符,更可以跟目錄。一個點就把當前目錄下所有未追蹤的文件全部add了   git commit -m "first commit" //把文件提交到倉庫   git remote add origin [email protected]:wangjiax9/practice.git //關聯遠程倉庫   git push -u origin master //把本地庫的所有內容推送到遠程庫上

技術分享

二、安裝git客戶端

Git是目前世界上最先進的分布式版本控制系統,git與svn的五個基本區別。它有以下特點:

分布式 : Git版本控制系統是一個分布式的系統, 是用來保存工程源代碼歷史狀態的命令行工具;

保存點 : Git的保存點可以追蹤源碼中的文件, 並能得到某一個時間點上的整個工程項目額狀態; 可以在該保存點將多人提交的源碼合並, 也可以會退到某一個保存點上;

Git離線操作性 :Git可以離線進行代碼提交, 因此它稱得上是完全的分布式處理, Git所有的操作不需要在線進行; 這意味著Git的速度要比SVN等工具快得多, 因為SVN等工具需要在線時才能操作, 如果網絡環境不好, 提交代碼會變得非常緩慢;

Git基於快照 : SVN等老式版本控制工具是將提交點保存成補丁文件, Git提交是將提交點指向提交時的項目快照, 提交的東西包含一些元數據(作者, 日期, GPG等);

Git的分支和合並 : 分支模型是Git最顯著的特點, 因為這改變了開發者的開發模式, SVN等版本控制工具將每個分支都要放在不同的目錄中, Git可以在同一個目錄中切換不同的分支;

分支即時性 : 創建和切換分支幾乎是同時進行的, 用戶可以上傳一部分分支, 另外一部分分支可以隱藏在本地, 不必將所有的分支都上傳到GitHub中去;

分支靈活性 : 用戶可以隨時 創建 合並 刪除分支, 多人實現不同的功能, 可以創建多個分支進行開發, 之後進行分支合並, 這種方式使開發變得快速, 簡單, 安全。

2-1 下載git客戶端

官方下載地址:http://git-scm.com/download/ 根據你自己的系統 下載對應版本,沒想到它知道我是Windows ^_^

技術分享

2-2 安裝客戶端

下載好之後咋們開始安裝吧,歡迎界面,下一步。

技術分享

技術分享

選擇安裝路徑,千萬別選帶中文的路徑,有時候會引起不必要的誤會。

技術分享

選擇安裝組件,按默認的來就好了。
1)圖標組件(Addition icons) : 選擇是否創建快速啟動欄圖標 或者 是否創建桌面快捷方式;
2)桌面瀏覽(Windows Explorer integration) : 瀏覽源碼的方法, 單獨的上下文瀏覽 只使用bash 或者 只用Git GUI工具; 高級的上下文瀏覽方法 使用git-cheetah plugin插件;
3)關聯配置文件(Associate .git*) : 是否關聯git配置文件, 該配置文件主要顯示文本編輯器的樣式;
4)關聯shell腳本文件(Associate .sh) : 是否關聯Bash命令行執行的腳本文件;
5)使用TrueType編碼 : 在命令行中是否使用TruthType編碼, 該編碼是微軟和蘋果公司制定的通用編碼;

技術分享

設置開始菜單中快捷方式的目錄名稱,默認就好,下一步吧

技術分享

設置環境變量 : 選擇使用什麽樣的命令行工具, 一般情況下我們默認使用Git Bash即可, 默認選擇;
1)Git自帶 : 使用Git自帶的Git Bash命令行工具;
2)系統自帶CMD : 使用Windows系統的命令行工具;
3) 二者都有 : 上面二者同時配置, 但是註意, 這樣會將windows中的find.exe 和 sort.exe工具覆蓋, 如果不懂這些盡量不要選擇;

技術分享

選擇換行格式 ,依然是默認就好。
1)檢查出windows格式轉換為unix格式 : 將windows格式的換行轉為unix格式的換行在進行提交;
2)檢查出原來格式轉為unix格式 : 不管什麽格式的, 一律轉為unix格式的換行在進行提交;
3)不進行格式轉換 : 不進行轉換, 檢查出什麽, 就提交什麽;

技術分享

選擇終端模擬器,依然默認就好

1)使用MinTTY,就是在Windows開了一個簡單模擬Linux命令環境的窗口Git Bash

2)使用windows的系統的命令行程序cmd.exe

技術分享

選擇默認就好,不用文件系統緩存

技術分享

安裝中……

技術分享

git終於安裝成功咯。

技術分享

2-3 綁定用戶

打開git-bash.exe,在桌面快捷方式/開始菜單/安裝目錄中

因為Git是分布式版本控制系統,所以需要填寫用戶名和郵箱作為一個標識,用戶和郵箱為你github註冊的賬號和郵箱

技術分享

psgit config –global 參數,有了這個參數,表示你這臺機器上所有的Git倉庫都會使用這個配置,當然你也可以對某個倉庫指定的不同的用戶名和郵箱。

三、為Github賬戶設置SSH key

眾所周知ssh key是加密傳輸。

加密傳輸的算法有好多,git使用rsa,rsa要解決的一個核心問題是,如何使用一對特定的數字,使其中一個數字可以用來加密,而另外一個數字可以用來解密。這兩個數字就是你在使用git和github的時候所遇到的public key也就是公鑰以及private key私鑰。

其中,公鑰就是那個用來加密的數字,這也就是為什麽你在本機生成了公鑰之後,要上傳到github的原因。從github發回來的,用那公鑰加密過的數據,可以用你本地的私鑰來還原。

如果你的key丟失了,不管是公鑰還是私鑰,丟失一個都不能用了,解決方法也很簡單,重新再生成一次,然後在github.com裏再設置一次就行

3-1 生成ssh key

首先檢查是否已生成密鑰 cd ~/.ssh,ls如果有3個文件,則密鑰已經生成,id_rsa.pub就是公鑰

技術分享

也可以打開我的電腦C:\Users\specter\.ssh 裏面找到

技術分享

如果沒有生成,那麽通過$ ssh-keygen -t rsa -C [email protected]

1)是路徑確認,直接按回車存默認路徑即可

2)直接回車鍵,這裏我們不使用密碼進行登錄, 用密碼太麻煩;

3)直接回車鍵

技術分享

生成成功後,去對應目錄C:\Users\specter\.ssh裏(specter為電腦用戶名,每個人不同)用記事本打開id_rsa.pub,得到ssh key公鑰

技術分享

3-2 為github賬號配置ssh key

切換到github,展開個人頭像的小三角,點擊settings

技術分享

然後打開SSH keys菜單, 點擊Add SSH key新增密鑰,填上標題,跟倉庫保持一致吧,好區分。

接著將id_rsa.pub文件中key粘貼到此,最後Add key生成密鑰吧。

技術分享

如此,github賬號的SSH keys配置完成。

技術分享

四、上傳本地項目到github

4-1 創建一個本地項目

我這創建了幾個空文件夾和一個文件及一個項目配置文件,好多前端項目都這樣搭架構,我也追隨潮流哈。

技術分享

4-2 建立本地倉庫

再來復習一下創建新倉庫的指令:

  git init //把這個目錄變成Git可以管理的倉庫   git add README.md //文件添加到倉庫   git add . //不但可以跟單一文件,還可以跟通配符,更可以跟目錄。一個點就把當前目錄下所有未追蹤的文件全部add了   git commit -m "first commit" //把文件提交到倉庫   git remote add origin [email protected]:wangjiax9/practice.git //關聯遠程倉庫   git push -u origin master //把本地庫的所有內容推送到遠程庫上

首先,進入到beautifulDay項目目錄,還記得創建倉庫成功後的那個頁面吧,指令都在呢。

然後執行指令:git init

技術分享

初始化成功後你會發現項目裏多了一個隱藏文件夾.git

這個目錄是Git用來跟蹤管理版本庫的,沒事千萬不要手動修改這個目錄裏面的文件,不然改亂了,就把Git倉庫給破壞了。

技術分享

接著,將所有文件添加到倉庫

執行指令:git add .

技術分享

然後,把文件提交到倉庫,雙引號內是提交註釋。

執行指令:git commit -m "提交文件"

技術分享

如此本地倉庫建立好了。

4-3 關聯github倉庫

到github beautifulDay倉庫復制倉庫地址

技術分享

然後執行指令:git remote add origin [email protected]:wangjiax9/beautifulDay.git

技術分享

4-4 上傳本地代碼

執行指令:git push -u origin master

1)敲一個:yes, 然後回車

技術分享

到此,本地代碼已經推送到github倉庫了,我們現在去githubt倉庫看看。

咦!奇怪了,我的目錄呢?這個坑突然冒出來是不是印象很深刻呢~

註意咯:git是不能管理空的文件夾的,文件夾裏必須有文件才能add

技術分享

好,我們來試一下,我在examples裏新建了一個test1.html文件

技術分享

執行指令添加文件->提交文件->推送文件

git add .

git commit -m "提交test1.html"

git push -u origin master

技術分享

然後刷新一個github,你會看到,examples文件夾出來了。

技術分享

打開examples文件夾,test1.html也在裏面。

技術分享

總結:

  現在通過博客來將github入門梳理了一遍,印象好深刻,應該不會變成零碎了。如果大家想要知道更多的git操作和知識,推薦去看看繆雪峰的git教程,講得很詳細。

繆雪峰的git教程

git與svn的五個基本區別

Git客戶端圖文詳解 如何安裝配置GitHub操作流程攻略

<轉>github入門到上傳本地項目