導入(introduction)
bitbucket, github, gitlabによるシェルスクリプトなどを含むソースコード管理と、dockerによるubuntu仮想環境の利用と、docker hubによる共有の作業の技術と課題を記録する。まず、悪戦苦闘中の事項などから。
<この項は書きかけです。順次追記します。>
背景(back ground)
公開できる作業はgithubで公開し、公開できない作業はgitlub, bitbucketで行なっている。
どんどん作業する人が入れ替わる可能性があるため、うまく引き継げるように資料を整理中。
公開算譜は機敏だ<完全版>(open source is agile &名古屋のIoTは名古屋のOSで
https://qiita.com/kaizen_nagoya/items/5dd49a046b5991af3a5e
前提条件、制約条件
前提条件
主要構成員はmac osを利用している。
Windowsを使うこともある。
Linuxの機材としてRaspberry PIとPC, dockerを利用している。
過去遺産など、現在動いているものは動かし続ける。
書き換え、置き換えで機能縮小してもいいかどうかは個別判断。
制約条件
無償のサービスだけでもできることはなるべく無償で実施する。
bitbacketは5人の非公開グループで作業。
公開できる資料はできるだけ公開し、いろいろな意見をもらう。
githubは公開グループで作業。
公開できない資料はなるべく推察できないように公開資料の公開の範囲を検討する。
現在構築している過去遺産は、再構築に過剰な時間、空間を費やさない。
苦闘1 何を公開し、何を公開しないか
何を公開し、何を公開しないかは、その時、その場、業務の方向性などで微妙に異なる。
何もかも公開しない方法で、うまくいけばよい。
公開情報から何か恩恵を受けたら、何かお返しをしたい。
御恩奉公の考え方。
ぼくの先生 プログラマになるまで
https://qiita.com/kaizen_nagoya/items/53e4bded9fe5f724b3c4
1. bitbucket
##登録(registration)
自主的に登録するか、グループを作った人からの招待で登録するか。
CentOS7 + DockerでGitBucketを構築する
https://qiita.com/tsumasakky/items/ff653426ea3bc7dbcbfb
Bitbucketの導入手順
https://qiita.com/yukihigasi/items/a788039801bee07e55a1
算譜(software)
先にリポジトリを作った。
リポジトリを作ってからグループを作る方法がよくわからなった。
次にグループを作った。
グループを作ると、そのリポジトリを作るメニューは出てきた。
苦闘2
bitbucketのよい使い方がまだ身についていない。
githubは、かなり恩恵を受けている。少なくとも、作業後に同様の恩恵が受けれる形に整理できれば。
SSHキー作ってbitbucketに登録など
https://qiita.com/takumiwada129/items/92244590010899dc3a13
Bitbucketでフォーク先から飛んできたプルリクをローカルで確認したい
https://qiita.com/nicco_mirai/items/d32884a4b750c07a4ab5
Bitbucket(サーバー版)への接続に、GitKrakenを試してみた
https://qiita.com/kusanoiskuzuno/items/3f606ca8a4b9c7872f58
bitbucketを使ったリモートリポジトリ作成(サーバー 上のローカルリポジトリと同期)
https://qiita.com/AstroK/items/7dd82d9c77f4f92f21ba
bitbucket.orgからMercurialリポジトリをクローンする際にSSLエラーが出た時の対処
https://qiita.com/ANNotunzdY/items/2186ea0f443961db9add
DockerでSSH keyを使ってbitbucketの非公開レポジトリをクローン
https://qiita.com/jerrywdlee/items/38d5442cd5677dbad79f
2 git
macへのgitの導入
$ brew install git
もっと前から知りたかった!Git便利コマンド(初心者向け)
https://qiita.com/manamin0521/items/e6b4ca93b0deaeb7ee96
gitコマンドでもURLがgithubであればgitnubの制約、bitbucketであればbitbucketの制約を受ける。
Gitはどうやってテキストファイルとバイナリファイルを自動識別しているのか?
https://qiita.com/okuoku/items/a21bfa68570ca67817ac
[git] gitconfigで会社用アカウントと個人用アカウントを楽に使い分けする
https://qiita.com/SugarShootingStar/items/64f239f89d25a3b9f520
苦闘3
gitコマンドだから、githubかと思って、githubにlogin して操作しようとした。
URLはbitbucketだった。bitbucketにloginしなきゃいけなかった。
各サービスの連携と、各ソフトの役割がまだ身に染みていない。
キャリア1年未満だった僕が、社内にGitの運用を布教するために読みあさったもの ( +ちょ〜簡単に各Gitの運用方法のメリット・デメリット )
https://qiita.com/h0ng0yut0/items/d0ef7224abc5e07525d4
Git素人のための勉強できるサイトまとめ
https://qiita.com/amagasu1234/items/0cf2bbbefeb1b0136524
【ツール】GitHubとssh接続を行う方法
https://qiita.com/Hiroki-IT/items/430dc368cdfd922e728c
【ツール】GitBashの起動時に、GitHubとのssh接続を自動的に行う方法
https://qiita.com/Hiroki-IT/items/aaf66487fcaca4069ac9
gitでuntrackedファイルを削除する方法
https://qiita.com/homhom_star/items/c9b76b505209a55a0028
git push 時の error: failed to push some refs to
https://qiita.com/yoshixj/items/6441ab2cd6bc367e607d
GitのコミットメッセージをSublime text 3に編集させる
https://qiita.com/yumetodo/items/12ac52ce08277839830f
【エラー解決】『 ! [rejected] master -> master (non-fast-forward) 』のせいでpushできねぇ
https://qiita.com/Hiroki-IT/items/1671514eb659880e5bef
既に git の tracking 対象になっているディレクトリやファイルをcommitのあとから .gitignore 対象にする
https://qiita.com/homhom_star/items/f0b07e9a0633647edbc4
2.1 GitHub
IDを登録する際のパスワードの制約
パスワードを登録する際の画面での認証
GitHub リポジトリに git push したら Permission が denied
https://qiita.com/tanishilove/items/3164ecf3f16585fa3bf2
これまで利用してきた事例
https://github.com/H-kawamura/tail
https://github.com/nagonagoya/Scheduler
現在利用しているgithub
苦闘4
githubからdockerの構築をえて、その結果をgithubに返したいが、docker hubに登録するところで力尽きている。
3. gitlab
苦闘5
20181026追記
添付ファイルが20MBまでだったのが10MBまでになっていた。
添付ファイルがwikiでうけつけなかった。
GitLabからGitLabへのプロジェクトexport/import時にハマった話
https://qiita.com/hellfire/items/a56b299d5433309f82db
iOSプロジェクトのGitLab-CI環境を構築してみた
https://qiita.com/otuhs_d/items/3007319f357e687e0402
GitLab CIでGoogle App Engineプロジェクトを自動デプロイ
https://qiita.com/otuhs_d/items/bbf1699c53d24d2c0625
GitLabの通知をWebhookでDiscordに送信する
https://qiita.com/otuhs_d/items/fbb80a0bad8d0921b8e6
GitLab CIを使ってGitHubプロジェクトをHerokuへ自動デプロイ
https://qiita.com/otuhs_d/items/47c55b6615c316365271
GitLab CI + GitLab Pages + Hugo を使ってドキュメント管理環境を構築する
https://qiita.com/otuhs_d/items/217d58bc3171f6a38016
カバレッジレポートを GitLab Pages にホスティングした
https://qiita.com/otuhs_d/items/4ddfae481d19382975cc
GitLab + reveal-ck でスライドの CI/CD
https://qiita.com/otuhs_d/items/479a4378f9fb07c16a6a
GitLab CI で RubyGems の自動アップデート
https://qiita.com/otuhs_d/items/9905f6beb7f3219bad62
gitlabのメール通知の設定
4. docker
ARM AArch64 プロセッサ向け TOPPERS/SSP カーネル「名古屋のIoTは名古屋のOSで」
https://qiita.com/kaizen_nagoya/items/74629a04581d16d8446d
「名古屋のIoTは名古屋のOSで」Dockerをどっかーらどうやって使えばいいんでしょう。TOPPERS/FMP on RaspberryPi with Macintosh編 5つの関門
https://qiita.com/kaizen_nagoya/items/9c46c6da8ceb64d2d7af
「DockerでPHP7.0×Apacheの環境を構築する@kurkuru」IT業界新人利用時の16の壁(mac mini編)
https://qiita.com/kaizen_nagoya/items/315e8d05a6eef00b56d1
上記記事は、
https://github.com/nagonagoya/Scheduler
の作業の一部。
苦闘6
docker fileの作成に慣れていない。
人が作ったdocker fileやdocker hub上のシステムに手を入れて、docker hubに登録するので手一杯。
まとまった時間を作って、docker, GitHubの連携をおさらいしよう。
4.1 docker hub
現在利用しているdocker hub
https://hub.docker.com/u/kaizenjapan/
mruby/cをdocker hubにあげた。要点5つ課題6つ
https://qiita.com/kaizen_nagoya/items/b908c594ff9d829683b5
苦闘7
docker pushの方法を毎回忘れてしまう。
その度に、docker images, docker psして、
今、自分が何をしているのか記録を取り出して対応。
利用しやすいような命名規則を作れていない。ファイル名は毎回やっつけ。
5 ubuntu
苦闘8
Debian, Raspbianはよく使う。ubuntuはdockerを触るようになってから。
ubuntuの利点が見えていない。apt -getがなんとか支えているのが幸い。
しかし、apt -get install できるのが最新でない場合に、どのように登録するとよいかまだしたことがない。残念。
apt-getコマンドから、aptコマンドに既定値は変更。
5.1 apt -get
$ apt update
苦闘9
apt -get install で過去に2度ほど、うまく導入できなかったことがあった。
upgradeがうまく行かなかった時。記録がどこかにあるはずだが、リンクをどこに貼ったか思い出せない。
6 wireshark
上記の作業中で、ネットワークの接続の不具合、認証の失敗の際に、wiresharkで記録を取り、確認している。
wiresharkのmacへの導入はwireshark.appを作りたければ、下記。
$ brew cask install wireshark
苦闘10
4台のうち1台で、"The capture session could not be initiated on interface 'en0' "というエラーが出た。
brewで導入したIDでも、システム管理者であるAdministratorでも同じエラー。
”The capture session could not be initiated on interface 'en0' ”検索
ls -al bp*をすると所有者がrootになっていた。
$ cd /dev
$ ls -al bp*
$ chown administrator bp*
他に悪い影響があるかどうかを検討中。
上記エラーは出なくなった。
wireshark 参考
Wireshark 導入、記録、分析
https://qiita.com/kaizen_nagoya/items/d1d452d5f3eadd420d6e
「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。
https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e
課題(issue)
githubとdockerの連携
githubにdocker fileなどを記録し、そこから展開し、逆に改定した内容はgithubに戻すようにする習慣がまだ。
dockerで機械学習(71) 環境構築(1) docker どっかーら、どーやってもエラーばっかり。
https://qiita.com/kaizen_nagoya/items/690d806a4760d9b9e040
日報、週報、月報、年報
プログラマの「日報、週報、月報、年報」考
https://qiita.com/kaizen_nagoya/items/97ad8ac9217c12c3bb69
苦闘11
github, bitbucket, docker hub等での作業そのものを自動収集して日報を生成するシステムを構築せねばと思いながら手付かず。特に、操作間違い、ソフトのエラーなどの記録は内部または外部のいずれかのWebにリンクを貼りたい。
ticket driven
issueをあげるか、wikiに整理しておくだけにするか。
あるいはissueにあげた内容で、まとまりごとにwikiに反映するようにするか。
関係者の労力をなるべく少なくても、うまく伝わるように。
参考資料(reference)
GitHubチュートリアル-Hello Worldプロジェクト-
https://qiita.com/Rashyn/items/8a789f75437b880966e6
Gitでやらかした時に使える19個の奥義
https://qiita.com/muran001/items/dea2bbbaea1260098051
【GitHubで成長する】GitHub大好きで日課な私の環境【Sourcetree】
https://qiita.com/aocattleya/items/5fe21557e56c8fac5547
Linus Torvalds氏によるGitの内部構造の解説
https://qiita.com/hogemax/items/b09abc522e0ec05da4fe
SubGitを使って,Subversionのプロジェクトをgitで管理する
https://qiita.com/mitsu48/items/3609ba881ce15b17cd08
open な issue がどんどん溜まる現象を解決するために
https://qiita.com/items/efe22d9a23ad2e9934d6
Markdown記法 チートシート @ github
https://gist.github.com/mignonstyle/083c9e1651d7734f84c99b8cf49d57fa
MarkdownのTable内で改行を入れる
https://qiita.com/nekogeruge_987/items/b43481ea46b809d3a2f1
Markdownでtable作ってもうまく表示できない時
https://qiita.com/risagon/items/7d75c221d672b94d4481
Gitlabに触ってみて、Githubと比較した
https://qiita.com/developer-kikikaikai/items/3fd1277a9a5778000638
Git/gitlabで共同作業をするための最小限の知識
https://doss.eidos.ic.i.u-tokyo.ac.jp/html/git.html
【Git】ブランチ(branch)の作り方 メモ
https://qiita.com/takehzi/items/4228631759cdb2e28347
自前で起動する場合
gitlabのアップデート
https://qiita.com/abcb2/items/e9e9274c597ae6dee0f8
GitLabのプロジェクトexportに苦労した話
https://qiita.com/tetsukay/items/9144b1ea1c7269a138d8
続:GitLabのプロジェクト import に苦労した話
https://qiita.com/tetsukay/items/2441d61c62c90bb34282
GitLabコマンド コピペで使えるよ!
https://qiita.com/okdokdokdokdokd/items/4d3b44e6f2f30652fb58
Gitlab環境構築してみる
https://qiita.com/kuronekonaru/items/45e610bd177826f90fb6
Dockerで動くGitLabのpostgresからsnippetsの一覧を取得する
https://qiita.com/sakahukamaki/items/fb695e977fa4eb916cb7
GitLab最小構成セットアップ(AWSに応用可)
https://qiita.com/Kento75/items/cd943fe5e9af98f00539
よく使うgitコマンド
https://qiita.com/spaciba_h_t/items/387c509c0a4c39846a8b
よく使うGitコマンド一覧
https://qiita.com/6592sho/items/b384e7fb588ef3d6c7ed
SourceTreeユーザーが、空コミットだけターミナルでする手順
https://qiita.com/orimomo/items/3f9ed343a9de9edbe284
Git でよく使われるコマンドにイラストによる説明を加えて1枚のチートシートにまとめてみた(SVG画像追加)
https://qiita.com/kozzy/items/b42ba59a8bac190a16ab
その他
GitLab.comでのGroup運用と外部サービス(Unity Cloud Build)連携
https://qiita.com/nfukuoka/items/a8864c6a42bf180ca583
組込み製品向けGitLab運用手順書[CC0ライセンス]
https://qiita.com/nfukuoka/items/d81bd4f2ee5c0c845abc
Linux:gitリポジトリを一時的にweb公開するscript
https://qiita.com/nfukuoka/items/c3f179d1045cca658360
git管理ツールRepoを入れてみよう
https://qiita.com/fuuuuumin65/items/12310745a0d3c2319fe1
KuinをGitHubのリポジトリからビルドしてみた
https://qiita.com/tomiuchi-kouta-github/items/90b0eb4b3de1b1b5c944
<この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。>
文書履歴(document history)
ver. 0.10 初稿 20180910 昼
ver. 0.11 苦闘追記 20180910 夜
ver. 0.12 gitlab, 参考文献追記 20181028
ver. 0.13 参考文献追記 20181106
ver. 0.14 open issue 追記 20190208
ver. 0.15 参考URL追記 20190214
ver. 0.16 Gitでやらかした時に使える19個の奥義 追記 20190218
ver. 0.17 参考資料追記 20190223
ver. 0.18 参考資料追記 20190224 夕
ver. 0.19 URL等追記 20190224 夜
ver. 0.20 参考資料追記 20190301
ver. 0.21 参考資料追記 20190406
ver. 0.22 apt-getからaptへ変更 20190407
ver. 0.23 参考資料追記 20190413
ver. 0.24 細部追記 20190502
ver. 0.25 gitlab追記 20190505
ver. 0.26 git追記 20190508
最後までおよみいただきありがとうございました。
いいね 💚、フォローをお願いします。
Thank you very much for reading to the last sentence.
Please press the like icon 💚 and follow me for your happy life.
http://b.hatena.ne.jp/guide/bbutton