Github参加eoeに基づくオープンソースプロジェクトガイド
Githubは非常に素晴らしいプロジェクト管理サイトで、Gitの原理に基づいて、私たちは非常に便利な多くの人が協力してオープンソースプロジェクトに参加することができます.先日eoeはandroidクライアントをオープンソースしました.多くの学生が積極的に参加したり、参加したりしたいと思っていますが、GitやGithubに詳しいかどうか、多くの困惑と疑問があります.私はここでGithubに基づいてeoeオープンソースプロジェクトに参加する方法のガイドラインを書きます.
注:Gitの理念と基本的な操作と推奨の使い方は詳しくは言いませんが、git-flowのような規範や他の文章を参考にして、今回はGithubに基づいて多くの人が協力する方法だけを話します.
協力の約束
1.誰もがfork 1部の自分のrepoをすることができて、すべての修正はすべて自分の私有のrepoの上で行います; 2.修正が完了し、テストに合格した後、主repoにpull request要求を送ることで合併する. 3. 主repo(eoecn/android-app)の管理チームがpull requestリクエストを受け取った後、reviewコードを統合します. 4.個人のrepoは直ちに主repoと同期しなければならない.
次に、各ステップがどのように動作するかを詳細に説明します.
ステップ1:forkは自分のrepoを開いてeoecn/android-appのGithub上のホームページ(https://github.com/eoecn/android-app/)を開いて、以下のようにします.
右上隅で「fork」をクリックすると、forkは自分のrepoに似ています.urlはhttps://github.com/IceskYsl/android-appに似ています.今、私たちは自分のrepoを持っています.次の操作はすべて自分のrepoに基づいています(私のところはiceskysl/android-appです).
ステップ2:clone自分のrepoの上で私たちはfork自分のrepoを持って、それからcloneを降りることができて、先に自分のrepoのホームページ(https://github.com/IceskYsl/android-app)に着いて、repoのgitアドレスを見つけて、このように
ステップ3:リモートブランチの表示と追加次にcdをプロジェクトに追加し、現在のgitリモートウェアハウスを見て、次のようにします.
現在のプロジェクトには「origin」というリモートウェアハウス(cloneの時に加入したもの)があり、メインウェアハウス(eoecn/android-app)とコード同期を保つために、メインウェアハウスのリモートウェアハウスを追加する必要があります.コマンドは次のとおりです.
はい、ここまで倉庫の追加は完了しました.メイン倉庫のコードと一致するように、次にメイン倉庫の最新のコードを取得する必要があります.
ステップ4:マスターウェアハウスの最新コードの取得
ステップ5:自分のブランチにマージ
あら、ちょうどメインブランチにQRコードスキャンを追加したコードがマージされています.
第6歩:ローカル修正コード、自分のrepoローカルコードに提出して最新を維持した後、コードを修正したり追加したりすることができます.例えば、新しい機能を追加して他のバグを修復したりします.ここではREADMEを例示します.mdにこのリンクへの情報を追加します.操作手順は次のとおりです.ice@mac:/source/labs/git/android-app > mate . READMEを開くmdファイル、次の情報を追加
次に、今回の修正を地元の倉庫に追加し、次の手順に従います.
最後に今回の修正を自分のリモートウェアハウス(IceskYsl/android-app)に提出し、以下のように操作しました.
ステップ7:メインrepoにpull requestを送信自分のrepoにコミットすると、メインrepoにマージを要求するpull requestを送信できます.操作手順は、https://github.com/IceskYsl/android-appPullを開き、右上の「request」をクリックすると、pull requestを作成するインタフェースが開きます.
ステップ8:メインrepoがpull requestを受け取ったら、mergeが入ってくる
これはreviewで修正でき、問題なければ直接「Merge pull requst」
mergeの後はメイン倉庫で見ることができます.以下のようにします.
これで、コラボレーションプロセス全体が完了します.
eoe.cnクライアントオープンソース
重大なメッセージ!eoe.cnクライアントオープンソース https://github.com/eoecn/android-app
原文住所:http://my.eoe.cn/iceskysl/archive/3195.html
注:Gitの理念と基本的な操作と推奨の使い方は詳しくは言いませんが、git-flowのような規範や他の文章を参考にして、今回はGithubに基づいて多くの人が協力する方法だけを話します.
協力の約束
次に、各ステップがどのように動作するかを詳細に説明します.
ステップ1:forkは自分のrepoを開いてeoecn/android-appのGithub上のホームページ(https://github.com/eoecn/android-app/)を開いて、以下のようにします.
右上隅で「fork」をクリックすると、forkは自分のrepoに似ています.urlはhttps://github.com/IceskYsl/android-appに似ています.今、私たちは自分のrepoを持っています.次の操作はすべて自分のrepoに基づいています(私のところはiceskysl/android-appです).
ステップ2:clone自分のrepoの上で私たちはfork自分のrepoを持って、それからcloneを降りることができて、先に自分のrepoのホームページ(https://github.com/IceskYsl/android-app)に着いて、repoのgitアドレスを見つけて、このように
[email protected]:IceskYsl/android-app.git
、それからcloneは地元に着きます1
2
3
4
5
6
7
ice@mac:/source/labs/git > git clone [email protected]:IceskYsl/android-app.git
Cloning into 'android-app'...
remote: Counting objects: 490, done.
remote: Compressing objects: 100% (296/296), done.
remote: Total 490 (delta 162), reused 490 (delta 162)
Receiving objects: 100% (490/490), 2.22 MiB | 231 KiB/s, done.
Resolving deltas: 100% (162/162), done.
ステップ3:リモートブランチの表示と追加次にcdをプロジェクトに追加し、現在のgitリモートウェアハウスを見て、次のようにします.
1
2
3
4
ice@mac:/source/labs/git > cd android-app/
ice@mac:/source/labs/git/android-app > git remote -v
origin [email protected]:IceskYsl/android-app.git (fetch)
origin [email protected]:IceskYsl/android-app.git (push)
現在のプロジェクトには「origin」というリモートウェアハウス(cloneの時に加入したもの)があり、メインウェアハウス(eoecn/android-app)とコード同期を保つために、メインウェアハウスのリモートウェアハウスを追加する必要があります.コマンドは次のとおりです.
1
2
3
4
5
6
ice@mac:/source/labs/git/android-app > git remote add eoecn [email protected]:eoecn/android-app.git
ice@mac:/source/labs/git/android-app > git remote -v
eoecn [email protected]:eoecn/android-app.git (fetch)
eoecn [email protected]:eoecn/android-app.git (push)
origin [email protected]:IceskYsl/android-app.git (fetch)
origin [email protected]:IceskYsl/android-app.git (push)
はい、ここまで倉庫の追加は完了しました.メイン倉庫のコードと一致するように、次にメイン倉庫の最新のコードを取得する必要があります.
ステップ4:マスターウェアハウスの最新コードの取得
1
2
3
4
5
6
7
8
9
ice@mac:/source/labs/git/android-app > git fetch eoecn
remote: Counting objects: 279, done.
remote: Compressing objects: 100% (94/94), done.
remote: Total 222 (delta 128), reused 181 (delta 89)
Receiving objects: 100% (222/222), 261.66 KiB | 98 KiB/s, done.
Resolving deltas: 100% (128/128), completed with 50 local objects.
From github.com:eoecn/android-app
bd0f14b..6b9533d master -> eoecn/master
ice@mac:/source/labs/git/android-app >
ステップ5:自分のブランチにマージ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
ice@mac:/source/labs/git/android-app > git merge eoecn/master
Updating c7b152c..6b9533d
Fast-forward
README.md | 1 +
source/.classpath | 4 +-
source/AndroidManifest.xml | 17 +-
source/libs/zxing-1.6.jar | Bin 0 -> 245201 bytes
source/project.properties | 2 +-
source/res/layout/qr_code_scan.xml | 33 ++
source/res/layout/umeng_fb_send_feedback.xml | 6 +-
source/res/layout/user_login_activity.xml | 13 +-
source/res/raw/beep.ogg | Bin 0 -> 6401 bytes
source/res/values-zh/strings.xml | 176 ++++++-----
source/res/values/colors.xml | 7 +
source/res/values/dimens.xml | 113 +++----
source/res/values/ids.xml | 18 +-
source/res/values/strings.xml | 176 ++++++-----
source/res/values/styles.xml | 7 +-
source/src/cn/eoe/app/biz/BlogsDao.java | 3 -
source/src/cn/eoe/app/biz/DetailDao.java | 1 -
source/src/cn/eoe/app/biz/NewsDao.java | 4 -
source/src/cn/eoe/app/biz/SearchDao.java | 4 +-
source/src/cn/eoe/app/biz/WikiDao.java | 1 -
source/src/cn/eoe/app/entity/BlogContentItem.java | 2 +-
source/src/cn/eoe/app/entity/NewsContentItem.java | 2 +-
.../cn/eoe/app/entity/base/BaseResponseData.java | 2 +-
.../cn/eoe/app/indicator/TitlePageIndicator.java | 5 +-
.../eoe/app/slidingmenu/SlidingActivityHelper.java | 2 +-
source/src/cn/eoe/app/ui/DetailsActivity.java | 3 -
source/src/cn/eoe/app/ui/MainActivity.java | 36 +--
source/src/cn/eoe/app/ui/SplashActivity.java | 17 +-
source/src/cn/eoe/app/ui/UserCenterActivity.java | 8 +-
source/src/cn/eoe/app/ui/UserLoginActivity.java | 249 ++++++++-------
source/src/cn/eoe/app/ui/UserLoginUidActivity.java | 2 +
source/src/cn/eoe/app/ui/base/BaseActivity.java | 4 +-
.../cn/eoe/app/ui/base/BaseFragmentActivity.java | 1 -
.../app/ui/base/BaseSlidingFragmentActivity.java | 6 +-
source/src/cn/eoe/app/utils/MD5.java | 7 +-
source/src/cn/eoe/app/utils/PopupWindowUtil.java | 1 -
source/src/cn/eoe/app/utils/Utility.java | 1 -
source/src/cn/eoe/app/view/BlogFragment.java | 6 -
source/src/cn/eoe/app/view/NewsFragment.java | 6 -
source/src/cn/eoe/app/view/UserIntroFragment.java | 4 +-
source/src/cn/eoe/app/view/WikiFragment.java | 6 -
source/src/cn/eoe/app/widget/XListView.java | 2 +-
source/src/cn/eoe/app/widget/XListViewFooter.java | 2 +-
source/src/cn/eoe/app/widget/XListViewHeader.java | 2 +-
source/src/com/google/zxing/CaptureActivity.java | 216 +++++++++++++
.../com/google/zxing/camera/AutoFocusCallback.java | 48 +++
.../zxing/camera/CameraConfigurationManager.java | 288 +++++++++++++++++
.../src/com/google/zxing/camera/CameraManager.java | 326 ++++++++++++++++++++
.../com/google/zxing/camera/FlashlightManager.java | 150 +++++++++
.../zxing/camera/PlanarYUVLuminanceSource.java | 133 ++++++++
.../com/google/zxing/camera/PreviewCallback.java | 59 ++++
.../zxing/decoding/CaptureActivityHandler.java | 143 +++++++++
.../google/zxing/decoding/DecodeFormatManager.java | 104 +++++++
.../com/google/zxing/decoding/DecodeHandler.java | 115 +++++++
.../com/google/zxing/decoding/DecodeThread.java | 85 +++++
.../com/google/zxing/decoding/FinishListener.java | 47 +++
.../com/google/zxing/decoding/InactivityTimer.java | 71 +++++
source/src/com/google/zxing/decoding/Intents.java | 190 ++++++++++++
.../zxing/view/ViewfinderResultPointCallback.java | 34 ++
.../src/com/google/zxing/view/ViewfinderView.java | 183 +++++++++++
60 files changed, 2738 insertions(+), 416 deletions(-)
create mode 100644 source/libs/zxing-1.6.jar
create mode 100644 source/res/layout/qr_code_scan.xml
create mode 100644 source/res/raw/beep.ogg
create mode 100644 source/src/com/google/zxing/CaptureActivity.java
create mode 100644 source/src/com/google/zxing/camera/AutoFocusCallback.java
create mode 100644 source/src/com/google/zxing/camera/CameraConfigurationManager.java
create mode 100644 source/src/com/google/zxing/camera/CameraManager.java
create mode 100644 source/src/com/google/zxing/camera/FlashlightManager.java
create mode 100644 source/src/com/google/zxing/camera/PlanarYUVLuminanceSource.java
create mode 100644 source/src/com/google/zxing/camera/PreviewCallback.java
create mode 100644 source/src/com/google/zxing/decoding/CaptureActivityHandler.java
create mode 100644 source/src/com/google/zxing/decoding/DecodeFormatManager.java
create mode 100644 source/src/com/google/zxing/decoding/DecodeHandler.java
create mode 100644 source/src/com/google/zxing/decoding/DecodeThread.java
create mode 100644 source/src/com/google/zxing/decoding/FinishListener.java
create mode 100644 source/src/com/google/zxing/decoding/InactivityTimer.java
create mode 100644 source/src/com/google/zxing/decoding/Intents.java
create mode 100644 source/src/com/google/zxing/view/ViewfinderResultPointCallback.java
create mode 100644 source/src/com/google/zxing/view/ViewfinderView.java
あら、ちょうどメインブランチにQRコードスキャンを追加したコードがマージされています.
第6歩:ローカル修正コード、自分のrepoローカルコードに提出して最新を維持した後、コードを修正したり追加したりすることができます.例えば、新しい機能を追加して他のバグを修復したりします.ここではREADMEを例示します.mdにこのリンクへの情報を追加します.操作手順は次のとおりです.ice@mac:/source/labs/git/android-app > mate . READMEを開くmdファイル、次の情報を追加
次に、今回の修正を地元の倉庫に追加し、次の手順に従います.
1
2
3
4
5
6
7
8
9
10
11
12
13
ice@mac:/source/labs/git/android-app > git st
# 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: README.md
#
no changes added to commit (use "git add" and/or "git commit -a")
ice@mac:/source/labs/git/android-app > git add .
ice@mac:/source/labs/git/android-app > git commit -m " ' Github eoe ' "
[master 39087c4] ' Github eoe '
1 file changed, 3 insertions(+)
最後に今回の修正を自分のリモートウェアハウス(IceskYsl/android-app)に提出し、以下のように操作しました.
1
2
3
4
5
6
7
8
ice@mac:/source/labs/git/android-app > git push origin master
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 522 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
To [email protected]:IceskYsl/android-app.git
1c960df..39087c4 master -> master
ステップ7:メインrepoにpull requestを送信自分のrepoにコミットすると、メインrepoにマージを要求するpull requestを送信できます.操作手順は、https://github.com/IceskYsl/android-appPullを開き、右上の「request」をクリックすると、pull requestを作成するインタフェースが開きます.
ステップ8:メインrepoがpull requestを受け取ったら、mergeが入ってくる
これはreviewで修正でき、問題なければ直接「Merge pull requst」
mergeの後はメイン倉庫で見ることができます.以下のようにします.
これで、コラボレーションプロセス全体が完了します.
eoe.cnクライアントオープンソース
原文住所:http://my.eoe.cn/iceskysl/archive/3195.html