熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java開源技術 >> 正文

玩轉JBoss AS7

2013-11-23 20:42:51  來源: Java開源技術 

原文 Hacking on AS http://communityjbossorg/wiki/HackingonAS

jbossas 使用 github 來管理源代碼所以要求閱讀者有基本的git知識可以閱讀一下<<pro git>>書籍

 

創建github帳號

http://githubcom

 

Fork 你的jbossas 副本

http://githubcom/jbossas/jbossas

 

用Git克隆你的副本到本機工作區

$ git clone git@githubcom:[your user]/jbossasgit
Initialized empty Git repository in /devel/jbossas/git/
remote: Counting objects: done
remote: Compressing objects: % (/) done
remote: Total (delta ) reused (delta )
Receiving objects: % (/) MiB | KiB/s done
Resolving deltas: % (/) done

$ cd jbossas

 

 

將git遠程引用添加為upstream 為了以後使用pull來更新

git remote add upstream git://githubcom/jbossas/jbossasgit

 

使用maven (通過命令 buildsh) (確實你在使用 maven )

$ /buildsh install

[INFO]
[INFO] Reactor Summary:
[INFO]
[INFO] JBoss Application Server: BOM SUCCESS [s]
[INFO] JBoss Application Server: Parent Aggregator SUCCESS [s]
[INFO] JBoss Application Server: Domain Core SUCCESS [s]
[INFO] JBoss Application Server: Server Manager SUCCESS [s]
[INFO] JBoss Application Server: Server SUCCESS [s]
[INFO] JBoss Application Server: Domain Controller SUCCESS [s]
[INFO] JBoss Application Server: Process Manager SUCCESS [s]
[INFO] JBoss Application Server: Remoting SUCCESS [s]
[INFO] JBoss Application Server: Build SUCCESS [s]
[INFO]
[INFO] BUILD SUCCESS
[INFO]

 

從 upstream 拉取(pull)更新

寫道

$ git pull rebase upstream master
From git://githubcom/jbossas/jbossas
* branch master > FETCH_HEAD
Updating fadf
Fastforward
{parent => bom}/pomxml | ++++
build/pomxml | +
domain/pomxml | ++
/src/main/resources/examples/hostexamplexml | +
/resources/examples/jbossdomainexamplexml | +++
/main/resources/schema/jbossdomaincommonxsd | +
/main/resources/schema/jbossdomainhostxsd | +
domain/src/main/resources/schema/jbossdomainxsd | ++
pomxml | ++++++++++++++++++
processmanager/pomxml | +
files changed insertions(+) deletions()
rename {parent => bom}/pomxml (%)

 

(如果你有本地提交rebase 會自動將你本地的提交移動到分支的頂端便於生成清晰的提交記錄方便他人合並如果沒有本地提交可以不加 rebase) 請注意 rebase 非常重要如果你確實有本地提交如果git pull不能快速移動指針它會合並提交如果不是用rebase它會給予你本地的修改進行合並rebase則是將你的修改與upstream進行合並也就是說一個合並提交會產生修改historyrebase會讓歷史更加的清晰和簡單而一旦你做了本地提交今後將很難重建在此此提交之前的歷史中還會討論

 

有一個辦法讓你不會忘記 rebase 選項就是給"pull rebase&#;創建一個別名

$ git config global aliasup "pull rebase"

 

然後使用新的別名而不是 pull

$ git up upstream master

 

另一個更加推崇的辦法是避免同時使用 pull 和 rebase而是用 fetch+rebase不過這已經超過了該文的內容可以參考git的文檔

$ git config global aliasup "pull rebase"

 

 

推送(push) 你拉取(pull)的更新到你個人的github repo

Java代碼  收藏代碼

  1. $ git push  

  2. Counting objects:  done  

  3. Delta compression using up to  threads  

  4. Compressing objects: % (/) done  

  5. Writing objects: % (/)  KiB done  

  6. Total  (delta ) reused  (delta )  

  7. To git@githubcom:[your user]/jbossasgit  

  8.    fadf  master > master  

你可能加上 f 參數用來強行提交你的修改參考注釋

 

討論你計劃的修改 (如果你想要得到反饋)

  • 論壇  http://communityjbossorg/en/jbossas/dev/jboss_as_development

  • IRC即時消息  irc://ircfreenodeorg/jbossas or https://webchatfreenodenet/?channels=jbossas

為你的修改(增強/修復bug)發布一個JIRA

http://jirajbossorg

 

創建一個簡單的主題分支(branch)來隔離這項工作 (僅作為一個推薦方法)

Java代碼  收藏代碼

  1. git checkout b my_cool_feature  

 

Note: See tips section for how to use a nice git prompt for tracking what branch you are in!

不斷的修改並且提交你的修改 (不要忘了push)

Java代碼  收藏代碼

  1. git commit m &#;JBASXXXX Frunubucate the Fromungulator&#;  

  2. git commit m &#;JBASYYYY Tripple Performance of Fromungulation&#;  

  3. git push my_cool_feature  

 

 

注意 git push 默認引用你正在push的branch默認為 master而不是你正在工作的branch

 

給予master分支的最新更新重建/衍合(rebase)你的分支(將你的提交更新到master的頂端)

git fetch upstream
git rebase i upstream/master
# if you have conflicts fix them and rerun rebase
# The f forces the push alters history see note below
git push f origin my_cool_feature

選 項i會啟動交互式的更新它允許你組合提交調整commit信息等這是一個好的方法使得commit日志非常清晰對於外部的更新注意這會修改提交 歷史產生干淨的patch對於其他已經fork你的分支的人並不友好所以你需要確認要麼你工作在一個沒有共享的分支上或者你共享了則需要告訴他 們你將修訂分支的歷史(因此一旦是推送完畢之後他們需要給予你分支的頂部做rebase)

 

 

 

 

 

 

將你的修改merge到upstream

  1. 在你請求將你的更新合並到upstream之前請重復步驟確認你的repo和upstream是同步的

  2. 發送一個pull request email to jbossaspullrequests@listsjbossorg (要加入這個list參考 here )附上你的repo的鏈接描述你的修改誰檢查你的改動(如果有的話)

  3. 在檢查之後管理員會合並你的patchupdate/resolve你請求中問題並回復什麼時候完成

  4. 不會忘了切換會master分支並且拉取更新

git checkout master
git pull upstream master


From:http://tw.wingwit.com/Article/program/Java/ky/201311/28948.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.