2013-08-23 :-)
_ 午後
1400 昼寝
_ [Github][NetBSD]初めての Github
小野寺さんに www.NetBSD.org翻訳プロジェクト の github 公開鍵を登録していただいたので、ておくれ Github ユーザーが写経しつつ実践してみた。
実践Git&GitHub - homebrewをフォークするためのGit&GitHub入門 後編(1/2) - A Way of Code
ワークフローは、図を眺めながらじゃないと頭に入らない ('A`)
Fork - リポジトリを自分のGitHubにコピーする
https://github.com/NetBSDjp/htdocs にアクセス
ウェブブラウザで画面右上の「Fork」をクリック
リポジトリの準備
clone
% git clone git@github.com:miwarin/htdocs.git
remote add
% git remote add NetBSDjp git@github.com:NetBSDjp/htdocs.git % cat ./.git/config [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = git@github.com:miwarin/htdocs.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master [remote "NetBSDjp"] url = git@github.com:NetBSDjp/htdocs.git fetch = +refs/heads/*:refs/remotes/NetBSDjp/*
Pull Requestのチェック
眺める
https://github.com/NetBSDjp/htdocs/pulls
作業用ブランチの作成
checkout master
% cd htdocs
% git branch * master
% git branch -a * master remotes/origin/AoiMoe remotes/origin/GO_WATANABE remotes/origin/HEAD -> origin/master remotes/origin/Kanoh remotes/origin/LBUG remotes/origin/TNF remotes/origin/TNG remotes/origin/TSHIOZAK remotes/origin/horiuchi remotes/origin/htdocs/releases/formal.xml-20130408 remotes/origin/jun remotes/origin/kanoh remotes/origin/kawamoto remotes/origin/master remotes/origin/takemura remotes/origin/tnf remotes/origin/yu
pull
% git pull origin
% git pull NetBSDjp
push master
% git push origin master
branch internals
% git branch internals
修正作業
checkout spike
% git checkout internals Switched to branch 'internals'
% git branch * internals master
Edit
編集する
add
% git status # On branch master # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: JP/staff/translation-assign.txt # no changes added to commit (use "git add" and/or "git commit -a")
% git add -i staged unstaged path 1: unchanged +11/-0 JP/staff/translation-assign.txt *** Commands *** 1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked 5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp What now>
What now> 1 [Enter] staged unstaged path 1: unchanged +11/-0 JP/staff/translation-assign.txt *** Commands *** 1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked 5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now> 2 [Enter] staged unstaged path 1: unchanged +11/-0 [J]P/staff/translation-assign.txt Update>>
Update>> 1 staged unstaged path * 1: unchanged +11/-0 [J]P/staff/translation-assign.txt
Update>> [Enter] updated one path *** Commands *** 1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked 5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now> 1 [Enter] staged unstaged path 1: +11/-0 nothing JP/staff/translation-assign.txt *** Commands *** 1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked 5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now> 6 [Enter] staged unstaged path 1: +11/-0 nothing [J]P/staff/translation-assign.txt
Review diff>> 1 [Enter] diff --git a/JP/staff/translation-assign.txt b/JP/staff/translation-assign.txt old mode 100644 new mode 100755 index 07716a6..5c38c7e --- a/JP/staff/translation-assign.txt +++ b/JP/staff/translation-assign.txt @@ -170,6 +170,17 @@ docs/compat.xml yyamano NOT-YET docs/current/index.xml tacha NOT-YET docs/elf.xml docs/index.xml ura NOT-YET +docs/internals/en/ap-ack.xml miwarin NOT-YET +docs/internals/en/ap-biblio.xml miwarin NOT-YET +docs/internals/en/chap-file-system.xml miwarin NOT-YET +docs/internals/en/chap-memory.xml miwarin NOT-YET +docs/internals/en/chap-networking-core.xml miwarin NOT-YET +docs/internals/en/chap-networking-services.xml miwarin NOT-YET +docs/internals/en/chap-processes.xml miwarin NOT-YET +docs/internals/en/chapters.ent miwarin NOT-YET +docs/internals/en/index.html miwarin NOT-YET +docs/internals/en/netbsd-internals.xml miwarin NOT-YET +docs/internals/en/preface.xml miwarin NOT-YET docs/kernel/converting-ethernet-drivers.xml docs/kernel/elf-notes.xml itomako NOT-YET docs/kernel/index.xml tacha NOT-YET *** Commands *** 1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked 5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now> 7 [Enter] Bye.
commit
% git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: JP/staff/translation-assign.txt #
% git commit (コミットメッセージを書く) [master d166e87] asign internals 1 file changed, 11 insertions(+) mode change 100644 => 100755 JP/staff/translation-assign.txt
push
% git push -u origin internals:internals Branch internals set up to track remote branch internals from origin. Everything up-to-date
あれ。push 済みかしら。何か操作をミスったか
最新のマージ
checkout master
% git checkout master
pull
% git pull origin
% git pull NetBSDjp
push master
% git push -u origin master:master Counting objects: 9, done. Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 597 bytes, done. Total 5 (delta 4), reused 0 (delta 0) To git@github.com:miwarin/htdocs.git 51a7a19..d166e87 master -> master Branch master set up to track remote branch master from origin.
checkout internals
% git checkout internals
rebase
% git rebase master internals First, rewinding head to replay your work on top of it... Fast-forwarded internals to master.
push (ghostscript-spike)
なし
Pull Request用ブランチの作成
checkout spike
% git checkout internals
git rebase (squash)
% git rebase -i master noop # Rebase d166e87..d166e87 onto d166e87 # # Commands: # p, pick = use commit # r, reword = use commit, but edit the commit message # e, edit = use commit, but stop for amending # s, squash = use commit, but meld into previous commit # f, fixup = like "squash", but discard this commit's log message # x, exec = run command (the rest of the line) using shell # # These lines can be re-ordered; they are executed from top to bottom. # # If you remove a line here THAT COMMIT WILL BE LOST. # # However, if you remove everything, the rebase will be aborted. # # Note that empty commits are commented out
( noop らしい? のでエディタを終了する )
Successfully rebased and updated refs/heads/internals. >>>
push origin updated
% git push -u origin internals:internals Total 0 (delta 0), reused 0 (delta 0) To git@github.com:miwarin/htdocs.git 51a7a19..d166e87 internals -> internals Branch internals set up to track remote branch internals from origin.
Pull Request
自分のリポジトリ https://github.com/miwarin/htdocs を開く。
Pull request ボタンをクリックし、
コメントを書くなどして
Send pull request をクリックする。
[ツッコミを入れる]