日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
“Github”里的“hub”改用Go語言開發(fā)

剛剛過去的2014年是Go語言重要的一年,不僅版本升級(jí)到了1.4,而且Go語言的集成開發(fā)環(huán)境LiteIDE也發(fā)布了x26,還在云計(jì)算方便吸引力不是的注意力。雖然有很多程序員不喜歡Go語言,但每種語言都有直接的缺點(diǎn)和優(yōu)點(diǎn),這是很正常的事情。最重要的是取之長、補(bǔ)己短。最近github宣布使用Go1.4重新開發(fā)了hub命令,就是要利用Go語言的長處。

成都創(chuàng)新互聯(lián)是專業(yè)的網(wǎng)站建設(shè)公司,提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計(jì)等網(wǎng)站開發(fā)一體化解決方案;包括H5開發(fā),微信小程序定制開發(fā),網(wǎng)站定制,企業(yè)網(wǎng)站建設(shè),商城網(wǎng)站開發(fā),響應(yīng)式網(wǎng)站開發(fā),建網(wǎng)站,PHP網(wǎng)站建設(shè),軟件開發(fā),軟文發(fā)布平臺(tái),網(wǎng)站營銷。歡迎做網(wǎng)站的企業(yè)前來合作洽談,成都創(chuàng)新互聯(lián)將竭誠為您服務(wù)!

Github是世界上最大的代碼托管服務(wù),它是在于最近幾年迅速超過了SoruceForge,很大程度上得益于Linux創(chuàng)始人Linus的影響力,和Git中去中心化的思想。相信很多人都使用過git和github,但估計(jì)很少人知道這個(gè)等式:git + hub = github,hub是一個(gè)用來封裝git的工具,為其擴(kuò)展更多的功能和特性,是GitHub運(yùn)行起來更加快捷方便。

 
 
  1. $ hub clone rtomayko/tilt
  2. # expands to:
  3. $ git clone git://github.com/rtomayko/tilt.git

hub命令的最佳使用方法是當(dāng)作git的別名,這樣,當(dāng)你輸入$ git  時(shí),你不僅能獲得git的所有功能,而且能增添很多附加特性。設(shè)置別名的方法是在你的.bash_profile文件放置下一行代碼:

 
 
  1. eval "$(hub alias -s)"

從2.2.0版本開始,hub開始改用Go語言開發(fā),主要原因是Go語言的高效。要想從源代碼安裝hub 2.x版本,你需要有一個(gè)Go語言開發(fā)環(huán)境,版本要在1.4以上:

 
 
  1. $ git clone https://github.com/github/hub.git
  2. $ cd hub
  3. $ ./script/build
  4. $ cp hub YOUR_BIN_PATH

hub2.x版本將對(duì)1.x版本保持最大的兼容。下面我里看一下hub命令提供了哪些額外的強(qiáng)大功能。

(下面這些代碼中假設(shè)你已經(jīng)做了git別名設(shè)置)

git clone

 
 
  1. $ git clone schacon/ticgit
  2. > git clone git://github.com/schacon/ticgit.git
  3. $ git clone -p schacon/ticgit
  4. > git clone git@github.com:schacon/ticgit.git
  5. $ git clone resque
  6. > git clone git@github.com/YOUR_USER/resque.git

git remote add

 
 
  1. $ git remote add rtomayko
  2. > git remote add rtomayko git://github.com/rtomayko/CURRENT_REPO.git
  3. $ git remote add -p rtomayko
  4. > git remote add rtomayko git@github.com:rtomayko/CURRENT_REPO.git
  5. $ git remote add origin
  6. > git remote add origin git://github.com/YOUR_USER/CURRENT_REPO.git

git fetch

 
 
  1. $ git fetch mislav
  2. > git remote add mislav git://github.com/mislav/REPO.git
  3. > git fetch mislav
  4. $ git fetch mislav,xoebus
  5. > git remote add mislav ...
  6. > git remote add xoebus ...
  7. > git fetch --multiple mislav xoebus

git cherry-pick

 
 
  1. $ git cherry-pick http://github.com/mislav/REPO/commit/SHA
  2. > git remote add -f mislav git://github.com/mislav/REPO.git
  3. > git cherry-pick SHA
  4. $ git cherry-pick mislav@SHA
  5. > git remote add -f mislav git://github.com/mislav/CURRENT_REPO.git
  6. > git cherry-pick SHA
  7. $ git cherry-pick mislav@SHA
  8. > git fetch mislav
  9. > git cherry-pick SHA

git am, git apply

 
 
  1. $ git am https://github.com/defunkt/hub/pull/55
  2. [ downloads patch via API ]
  3. > git am /tmp/55.patch
  4. $ git am --ignore-whitespace https://github.com/davidbalbert/hub/commit/fdb9921
  5. [ downloads patch via API ]
  6. > git am --ignore-whitespace /tmp/fdb9921.patch
  7. $ git apply https://gist.github.com/8da7fb575debd88c54cf
  8. [ downloads patch via API ]
  9. > git apply /tmp/gist-8da7fb575debd88c54cf.txt

git fork

 
 
  1. $ git fork
  2. [ repo forked on GitHub ]
  3. > git remote add -f YOUR_USER git@github.com:YOUR_USER/CURRENT_REPO.git

git pull-request

 
 
  1. # while on a topic branch called "feature":
  2. $ git pull-request
  3. [ opens text editor to edit title & body for the request ]
  4. [ opened pull request on GitHub for "YOUR_USER:feature" ]
  5. # explicit title, pull base & head:
  6. $ git pull-request -m "Implemented feature X" -b defunkt:master -h mislav:feature

git checkout

 
 
  1. $ git checkout https://github.com/defunkt/hub/pull/73
  2. > git remote add -f -t feature mislav git://github.com/mislav/hub.git
  3. > git checkout --track -B mislav-feature mislav/feature
  4. $ git checkout https://github.com/defunkt/hub/pull/73 custom-branch-name

git merge

 
 
  1. $ git merge https://github.com/defunkt/hub/pull/73
  2. > git fetch git://github.com/mislav/hub.git +refs/heads/feature:refs/remotes/mislav/feature
  3. > git merge mislav/feature --no-ff -m 'Merge pull request #73 from mislav/feature...'

git create

 
 
  1. $ git create
  2. [ repo created on GitHub ]
  3. > git remote add origin git@github.com:YOUR_USER/CURRENT_REPO.git
  4. # with description:
  5. $ git create -d 'It shall be mine, all mine!'
  6. $ git create recipes
  7. [ repo created on GitHub ]
  8. > git remote add origin git@github.com:YOUR_USER/recipes.git
  9. $ git create sinatra/recipes
  10. [ repo created in GitHub organization ]
  11. > git remote add origin git@github.com:sinatra/recipes.git

git init

 
 
  1. $ git init -g
  2. > git init
  3. > git remote add origin git@github.com:YOUR_USER/REPO.git

git push

 
 
  1. $ git push origin,staging,qa bert_timeout
  2. > git push origin bert_timeout
  3. > git push staging bert_timeout
  4. > git push qa bert_timeout

git browse

 
 
  1. $ git browse
  2. > open https://github.com/YOUR_USER/CURRENT_REPO
  3. $ git browse -- commit/SHA
  4. > open https://github.com/YOUR_USER/CURRENT_REPO/commit/SHA
  5. $ git browse -- issues
  6. > open https://github.com/YOUR_USER/CURRENT_REPO/issues
  7. $ git browse -- issues/10
  8. > open https://github.com/YOUR_USER/CURRENT_REPO/issues/10
  9. $ git browse schacon/ticgit
  10. > open https://github.com/schacon/ticgit
  11. $ git browse schacon/ticgit commit/SHA
  12. > open https://github.com/schacon/ticgit/commit/SHA
  13. $ git browse resque
  14. > open https://github.com/YOUR_USER/resque
  15. $ git browse resque network
  16. > open https://github.com/YOUR_USER/resque/network

git compare

 
 
  1. $ git compare refactor
  2. > open https://github.com/CURRENT_REPO/compare/refactor
  3. $ git compare 1.0..1.1
  4. > open https://github.com/CURRENT_REPO/compare/1.0...1.1
  5. $ git compare -u fix
  6. > (https://github.com/CURRENT_REPO/compare/fix)
  7. $ git compare other-user patch
  8. > open https://github.com/other-user/REPO/compare/patch

git submodule

 
 
  1. $ git submodule add wycats/bundler vendor/bundler
  2. > git submodule add git://github.com/wycats/bundler.git vendor/bundler
  3. $ git submodule add -p wycats/bundler vendor/bundler
  4. > git submodule add git@github.com:wycats/bundler.git vendor/bundler
  5. $ git submodule add -b ryppl --name pip ryppl/pip vendor/pip
  6. > git submodule add -b ryppl --name pip git://github.com/ryppl/pip.git vendor/pip

git ci-status

 
 
  1. $ git ci-status [commit]
  2. > (prints CI state of commit and exits with appropriate code)
  3. > One of: success (0), error (1), failure (1), pending (2), no status (3)

git help

 
 
  1. $ git help
  2. > (improved git help)
  3. $ git help hub
  4. > (hub man page)

新聞名稱:“Github”里的“hub”改用Go語言開發(fā)
文章路徑:http://www.dlmjj.cn/article/coocgsh.html