eclipse Git配置

Git

1:選擇gitjava

 

 

2:下載對應版本git

 

 

安裝github

Git經常使用命令:

顯示信息類命令 
git ls-files -u 顯示衝突的文件,-s是顯示標記爲衝突已解決的文件服務器

git diff 對比工做區和stage文件的差別 
git diff --cached 對比stage和branch之間的差別網絡

git branch 列出當前repository下的全部branch 
git branch --a 列出local 和remote下的全部brancheclipse

git ls-files --stage 檢查保存在stage的文件ssh

git log 顯示到HEAD所指向的commit爲止的全部commit記錄 。使用reset HEAD~n 命令使HEAD指針向前移動,會致使HEAD以後的commit記錄不會被顯示。工具

git log -g則會查詢reflog去查看最近作了哪些動做,這樣能夠配合git branch 恢復以前由於移動HEAD指針所丟棄的commit對象。若是reflog丟失則能夠經過git fsck --full來查看沒被引用的commit對象。 
git log -p -2 對比最新兩次的commit對象 
log -1 HEADfetch

git log --pretty=onelineurl

git log --stat 1a410e 查看sha1爲1a410e的commit對象的記錄

git blame -L 12,22 sth.cs 若是你發現本身代碼中 的一個方法存在缺陷,你能夠用git blame來標註文件,查看那個方法的每一行分別是由誰 在哪一天修改的。下面這個例子使用了-L選項來限制輸出範圍在第12至22行


建立類命令 
git brach branchName 建立名爲branchName分支 
git checkout branchName 切換到branchName分支 
git checkout -b 建立並切換,也就是上面兩個命令的合併

git brach branchName ef71 從commit ef71建立名爲branchName的branch


撤銷類命令 
若是是單個文件 
1.use "git reset HEAD <file>..." to unstage 
若是已經用add 命令把文件加入stage了,就先須要從stage中撤銷

而後再從工做區撤銷 
2.use "git checkout -- <file>..." to discard changes in working directory

git checkout a.txt  撤銷a.txt的變更(工做區上的文件) 
若是是多個文件 
git chenkout .

若是已經commit 了,則須要 
git commit --amend 來修改,這個只能修改最近上一次的,也就是用一個新的提交來覆蓋上一次的提交。所以若是push之後再作這個動做就會有危險

$ git reset --hard HEAD 放棄工做區和index的改動,HEAD指針仍然指向當前的commit.(參照第一幅圖)

這條命令同時還能夠用來撤銷還沒commit的merge,其實原理就是放棄index和工做區的改動,由於沒commit的改動只存在於index和工做區中。

git reset --hard HEAD^ 用來撤銷已經commit的內容(等價於 git reset --hard HEAD~1) 。原理就是放棄工做區和index的改動,同時HEAD指針指向前一個commit對象。

git revert 也是撤銷命令,區別在於reset是指向原地或者向前移動指針,git revert是建立一個commit來覆蓋當前的commit,指針向後移動


提交類命令 
git add +文件名 跟蹤新文件或者已有文件的改動,或者用來解決衝突

git commit +文件名 把文件從stage提交到branch

git commit -a 把修改的文件先提交到stage,而後再從stash提交到branch


刪除類命令 
git rm --cached readme.txt 只從stage中刪除,保留物理文件

git rm readme.txt 不但從stage中刪除,同時刪除物理文件

git mv a.txt b.txt 把a.txt更名爲b.txt


Merge類命令

在衝突狀態下,須要解決衝突的文件會從index打回到工做區。

1.用工具或者手工解決衝突 
2.git add 命令來代表衝突已經解決。 
3.再次commit 已解決衝突的文件。

$ git reset --hard ORIG_HEAD 用來撤銷已經commit 的merge. 
$ git reset --hard HEAD 用來撤銷還沒commit 的merge,其實原理就是放棄index和工做區的改動。

git reset --merge ORIG_HEAD,注意其中的--hard 換成了 --merge,這樣就能夠避免在回滾時清除working tree。

git help 幫助命令

eclipse中git(推送到網絡服務器)

1:新建項目

 

 

2:右鍵項目Teamàshare project

3:選擇git

 

 

4:選擇爲git項目

 

 

5:第一次觀察狀態

 

修改後沒提交,或者剛建立如今>

6:右鍵項目Teamàcommit(寫完項目後)

提交到本地倉庫

 

 

7:第二次觀察狀態

 

有個油瓶說明提交到本地倉庫

8:右鍵項目Teamàremoteàpush(推到網絡倉庫)

1:登入github或者碼雲

2:建立個新的項目

3:複製祕鑰

 

 

 

輸入相關信息:

 

 

9:選擇推送進入的分支

 

 

輸入完上面兩個後,單擊add,下一步,在finish。

10:推送中(完成)

 

 

完成刷新頁面查看:

 

 

Eclipse獲取網絡git任務

1:選擇git視圖

 

 

2:選擇clone  或者

 

 

3:複製網絡祕鑰

在表格中複製祕鑰,填寫信息。

4:選擇須要複製下來的分支項目

 

 

5:更改到當前工做空間並給個倉庫名

 

 

6:出現如下視圖完成

 

 

7:切換到java視圖,導入項目

右鍵工做欄,importàgit

 

 

8:選擇油管

 

 

9:完成

 

 

 

Eclipse修改提交到網絡倉庫

1:右鍵項目Teamàcommit

2:右鍵項目Teamàremoteàpush(推到網絡倉庫)

就能夠

獲取網絡他人修改

1:右鍵項目Teamàpull

若是出錯:就更改

 

 

點擊open添加屬性:

[branch "master"]

         remote = origin

         merge = refs/heads/master

        

[remote "origin"]

         url = https://git.oschina.net/maofa/test.git

         fetch = +refs/heads/*:refs/remotes/origin/*

         push = refs/heads/master:refs/heads/master

更改衝突

1:右鍵項目Teamàsynchronize 添加到同步視圖

 

 

2:出現紅圖標證實修改衝突

 

 

先拉下來更新pull

3:手動解決衝突

 

 

4:右鍵項目 teamàadd to index 出現*

 

 

5:右鍵項目Teamàcommit

6:右鍵項目Teamàremoteàpush

完成:

 

 

 

出現問題:防火牆問題:http:ssIVerify=false

Git 快速配置:

Ssh:

1:生成ssh鑰匙

ssh-keygen -t rsa -C "youremail@example.com"

能夠在用戶主目錄裏找到.ssh目錄,裏面有id_rsa和id_rsa.pub兩個文件

在gitHub或者任何託管代碼平臺上添加鑰匙:

 

 

2:git clone https://github.com/master-dev.git克隆遠程分支

 

 

進入克隆目錄就能夠實現代碼的上傳推送

第一次建立目錄:

git init

git remote add origin http://192.168.0.240/root/bagtree.git

git add .

git commit

git push –u origin master

相關文章
相關標籤/搜索