----//git/github環境配置
一 . github上創建立一個項目
用戶登錄後系統,在github首頁,點擊頁面右下角“New Repository”
填寫項目信息:
project name: hibernate-demo
description : my first project
點擊“Create Repository” ; 現在完成了一個項目在github上的創建。
說明:我們創建的是一個github倉庫,一個倉庫裡只能存放(或叫對應)一個項目。
當你創建完成一個倉庫的之後,github已經給你一個提示:當你看完了我的文章再來看這個提示就非常清楚了。
Global setup:
Set up git
git config --global user.name "Your Name"
git config --global user.email [email protected]
Next steps:
mkdir hibernaet-demo2
cd hibernaet-demo2
git init
touch README
git add README
git commit -m 'first commit'
git remote add origin [email protected]:defnngj/hibernaet-demo2.git
git push -u origin masterExisting Git Repo?
cd existing_git_repo
git remote add origin [email protected]:defnngj/hibernaet-demo2.git
git push -u origin masterImporting a Subversion Repo?
Click here
When you're done:
Continue
二 . 創建密鑰
我們如何讓本地git項目與遠程的github建立聯系呢?之裡就用的密鑰。通俗點叫口令吧!(天王蓋地老,寶塔鎮河妖。。)
$ cd ~/. ssh 檢查本機的ssh密鑰如果提示:No such file or directory 說明你是第一次使用git。
如果不是第一次使用,請執行下面的操作,清理原有ssh密鑰。
$ mkdir key_backup
$ cp id_rsa* key_backup
$ rm id_rsa*生成新的密鑰:
Ssh-keygen –t rsa –C “[email protected]”
注意: 此處的郵箱地址,你可以輸入自己的郵箱地址。在回車中會提示你輸入一個密碼,這個密碼會在你提交項目時使用,如果為空的話提交項目時則不用輸入。這個設置是防止別人往你的項目裡提交內容。
打開本地C:\Documents and Settings\Administrator\.ssh\id_rsa.pub文件。此文件裡面內容為剛才生成人密鑰。
登陸github系統。點擊右上角的 Account Settings--->SSH Public keys ---> add another public keys
把你本地生成的密鑰復制到裡面(key文本框中), 點擊 add key 就ok了
在git中運行下面命令:
$ git –T [email protected]如果提示:Hi defnngj You've successfully authenticated, but GitHub does not provide shell access. 說明你連接成功了。
三 . 設置用戶信息
這一步不是很重要,貌似不設置也行,但github官方步驟中有,所以這裡也提一下。
在git中設置用戶名,郵箱
$ git config --global user.name "defnngj"//給自己起個用戶名
$ git config --global user.email "[email protected]"//填寫自己的郵箱
在github中找到 Account Settings--->Account Admin ,找到一下信息:
Your API token is e97279836f0d415a3954c1193dba522f ---keep it secret! Changing your password will
generate a new token
$ git config --global github.user defnngj //github 上的用戶名
$ git config --global github.token e97279836f0d415a3954c1193dba522f
----//小玩一下git
上面都是准備工作,一次完成,以後就不用設置了。下面內容才是亮點。
先來說說git下常用的幾個基本操作,和linux系統的操作是一樣的:
$ ls 查看當前目錄的內容
$ cd /d 切換到d盤
$ cd java/ 打開當前目錄下的java目錄
$ cd j(table鍵) 如果當你想打開java目錄且當前目錄下只有一個j開頭的目錄,輸入J 然後按鍵盤上的table鍵,會自動幫你補齊。
$ cd .. 返回上一級目錄
假如你現在新創建了一個項目,想把它提交到github上面?
假設你創建好了一個項目,並切換到項目的根目錄下面:
$ git status //查看當前項目下所有文的狀態,如果第一次,你會發現都紅顏色的,因為它還沒有交給git/github管理。
$ git add . //(.)點表示當前目錄下的所有內容,交給git管理,也就是提交到了git的本地倉庫。
Ps:git的強大之處就是有一個本地倉庫的概念,在沒有網絡的情況下可以先將更新的內容提交到本地倉庫。
$ git commit –m”new natter ” //對你更新或修改了哪些內容做一個描述。
$ git remote add origin [email protected]:defnngj/hibernate-demo.git
//如果你是第一次提交項目,這一句非常重要,這是你本地的當前的項目與遠程的哪個倉庫建立連接。
Ps: origin可以改為別人的名字,但是在你下一次push(提交)時,也要用你修改之後的名字。
$ git remote -v //查看你當前項目遠程連接的是哪個倉庫地址。
$ git push -u origin master //將本地的項目提交到遠程倉庫中。
------------------------------------------------------------
假如,你回到了家,想把公司提交的項目克隆到本地?
如果你是第一次想把github上面的項目克隆到本地或者要克隆別人的項目到地。
$ git clone [email protected]:defnngj/hibernate-demo.git //在git下面切換到想存放此項目的文件目錄下,運行這條命令就可以將項目克隆下來。
假如本地已經存在了這個項目,而倉庫中又有一新的更新,如何把更的合並到本地的項目中?
$ git fetch origin //取得遠程更新,這裡可以看做是准備要取了
$ git merge origin/master //把更新的內容合並到本地分支/master
-------------------------------------------
項目中刪除了一些文件,如何提交?
假如遠程倉庫中已經存了aaa這個文件,我fetch了下來,並刪除了aaa這個文件,想再push上到遠程倉庫中,並使遠程倉庫中的項目被新的修改覆蓋(也是是遠程倉庫中的aaa也被刪除)
$ git status //可以看到我們刪除的哪些文件
$ git add . //刪除之後的文件提交git管理。
$ git rm src/com/hzh/hibernate/dao/aaa.java //移除我們刪除的那個文件,不然git不允許我們往遠程倉庫提交。
Ps: 如果你想刪除的是某個目錄(java包),這裡想移除整個目錄的內容。
$ git rm src/com/hzh/hibernate/bbb/ -r // -r 會把bbb/目錄下的所有內容一次性移動。
------------------------------------------------------------------------
遠程創建了一個新倉庫,本地創建了一個新項目,如何使新的項目與倉庫對應起來?
其實,這個也很簡單,只是我當時對那些命令不太理解,所以比較模糊,不知如何對應。
$ git remote add origin [email protected]:defnngj/hibernate-demo.git
//還是這個命令,在你push項目之前加上這一句就OK了。
[email protected]:defnngj/hibernate-demo.git 就是你常見的新倉庫的地址啊。git切換到新項目下,在push之前,加上這一句,我們創建的新倉庫就與新項目建立了連接。
怎麼樣?掌握了上面的那些,你是不是就可以在項目中把玩一下了。Git很強大,這些只是冰山一角,不過對新手來說暫時夠用了。
Ps:前兩天聊天,一哥們說又發現個藏片的好地方,可以把島國的小電影用這個管理,就不怕個人隱私被別人發現了尴尬。哈哈,你要不要試試。