- 投稿日:2020-01-22T23:09:41+09:00
【Git】fatal: protocol error: bad line length character: usag の解消方法
はじめに
develop ブランチが更新されたので、pull しようとしたら、
fatal: protocol error: bad line length character: usag
が発生しました。
なかなか解決できず、2時間ほど時間を無駄にしました。最初に結論からいうと、
.gitconfig を見直そう!!!!
環境
- macOS Catalina バージョン10.15.2
- git 2.21.1
やったこと
- .bashrc の見直し(効果なし)
- git のアップデート(効果なし)
- 対象のブランチを削除して、取得し直す(効果なし)
- プロジェクトを clone し直す(効果なし)
- 仮想環境で clone してから ローカルに持ってくる(効果なし)
- .gitconfig を見直す
.bashrc の見直し(効果なし)
参考文献より、
ググってみると、リモート先のサーバーにsshでログインする時に表示されるメッセージが悪いとか、
ssh関連で、.bashrcとか.zshrcとかの設定を見なおしたよ、というような内容が多い。でした。
ただ、自分の Mac の Terminal は fish を使っています。
bash も zsh も使っていません。念のため、.bashrc を確認しましたが、何も書かれていませんでした。
さらに念のため、.bashrc を消してみましたが、改善しませんでした。git のアップデート(効果なし)
git のバグかと思ったので、 git のアップデートしました。
mac で HomeBrew を使用している方は、下記のコマンドでアップデートできます。brew update brew install git
XCode の CommandLineTools での git を使っている方は、 which コマンドで path が合っているか確認しましょう。
which git # /usr/local/bin/git となっていれば OK
これでは改善しませんでした。
対象のブランチを削除して、取得し直す(効果なし)
今回は develop ブランチを pull しようとしたときに発生しました。
なので、 develop を削除して、取得し直そうと思いました。git checkout master git branch -D develop git checkout -b develop origin/developこれでももちろん改善せず。
プロジェクトを clone し直す(効果なし)
この際ヤケクソです。
プロジェクトを新たに clone することにしました。git clone https://github.com/<ユーザー名>/<プロジェクト名>.gitここでも、
fatal: protocol error: bad line length character: usag
が発生しました。
そこで、git そのものがバグっていると気づきました。.gitconfig を見直す
rm ~/.gitconig touch ~/.gitconig git config --global user.email example@example.com git config --global user.name exampleと、.gitconfig を削除して、name と email を設定し直しました。
これで、エラーが発生しなくなり、clone も pull もできるようになりました。最後に
どのタイミングでバグったのが気になるところですが、無事解消することができました。
参考文献
- 投稿日:2020-01-22T21:59:37+09:00
【macOS Catalina】CatalinaでJenkinsからの「git lfs」を通す【Jenkins】
はじめに
以下の記事を参考にgit lfsのコマンドが通らない問題を対処していたらCatalina特有の問題にぶつかりました。
【Jenkins】stderr: git-lfs filter-process: git-lfs: command not found - コガネブログ
http://baba-s.hatenablog.com/entry/2019/05/19/2146002019年のMacBookなので、Mojaveにダウングレードすることも出来ず、一瞬Macを買い直そうかと思いましたが、なんとかする方法があったのでJenkinsで「git lfs」コマンドを通すまでの一連の設定方法を記事にしました(大体上記の記事とおんなじです)
環境
MacBook Pro(16-inch,2019)
macOS Catalina 10.15.2
Jenkins 2.204.1
git 2.25.0
Git LFS 2.9.2
(git、GitLFSはインストール済み)
(gitリポジトリにはGitLFSが入っています)概要
上記のMacBookでgit cloneするだけのテストジョブを作っていたところ以下のようなエラーが出ました。
stderr: git-lfs filter-process: git-lfs: command not found上記の環境の通り、GitLFSはインストール済みです。が、Jenkinsからの実行だとコマンドが通らないようなので、通るように設定します。
対応
原因はGitLFSの実行ファイルが「/usr/local/bin/」にあり、Jenkinsからだとパスが通らない為になります。
なので、シンボリックリンクを作ってパスが通るようにします。SIPを無効化する
ということで、「/usr/bin/」にシンボリックリンクを作るのですが、システム保護(SIP)があるので無効化します。
- まず、Macをリカバリーモードで起動します。 一度電源を切り、Cmd+Rを押しながらMacを起動します(リンゴマークが出れば離してOK)
- 管理者アカウントのアイコンが表示されたウィンドウが出てくるので「次へ」をクリックし、パスワードを入力、ログインします。
- 画面上部のメニューバーから「ユーティリティ→ターミナル」をクリック
- ターミナルで
csrutil disable
を実行し、再起動します- これでSIPが無効化されます。
この設定をしないと
Operation not permitted
と怒られます。(Catalina)「/usr/bin/」の読み取り専用を一時的に無効化する
Catalinaでは「usr」などのディレクトリが標準で読み取り専用になります。
macOS 10.15 CatalinaでファイルシステムがRead-Onlyになる仕様はオプトアウトなしで、完全に無効にすることは不可能。 | AAPL Ch.
https://applech2.com/archives/20190610-read-only-system-volume-apfs-refresh.htmlしたがって、記事の通りに「usr/bin」にシンボリックリンクを作ろうとすると
ln: cannot create /usr/bin//git-lfs : Read-only file system
と怒られます。なので下記のコマンドを実行します。
sudo mount -uw /この設定は再起動すると元に戻るので注意してください。
シンボリックリンクを作る
以下のコマンドを実行します
sudo ln -s /usr/local/bin/git-lfs /usr/bin/これまでの設定がうまくいっていれば、コマンドが通るはずです。
以上で、git lfsコマンドが通るようになり、GitLFSを使っているリポジトリでもクローンできるようになったはずです。
Jenkinsのジョブで「Git LFS pull after checkout」を追加
「ソースコード管理→追加処理」から「Git LFS pull after checkout」を選択して、処理を追加します。
これを忘れるとUnityから開けないファイルが発生するようです。おわりに
記事を書きながら調べてみるとPATHを設定するシェルを書く解決方法もあるみたいです。
[JENKINS-52857] Cannot find git-lfs when it is not installed in /usr/bin/ - Jenkins JIRA
https://issues.jenkins-ci.org/browse/JENKINS-52857?focusedCommentId=380803&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-380803今回はやりませんでしたが、ご参考までに。
Catalinaでは、今回の問題以外にも、UnityがHub経由から出ないとインストールできない問題があったり色々悩まされることが多いです。つらい。
参考文献
・初心者向け MacでOperation not permittedの解決方法 - Qiita
https://qiita.com/iwaseasahi/items/9d2e29b02df5cce7285d・SIP is disabled, but /usr/bin is write protected anyway (macOS Catalina beta 10.5) - Stack Overflow
https://stackoverflow.com/questions/57440334/sip-is-disabled-but-usr-bin-is-write-protected-anyway-macos-catalina-beta-10
- 投稿日:2020-01-22T21:59:37+09:00
【macOS Catalina】Catalinaでstderr: git-lfs filter-process: git-lfs: command not foundに対応する【Jenkins】
はじめに
以下の記事を参考にgit lfsのコマンドが通らない問題を対処していたらCatalina特有の問題にぶつかりました。
【Jenkins】stderr: git-lfs filter-process: git-lfs: command not found - コガネブログ
http://baba-s.hatenablog.com/entry/2019/05/19/2146002019年のMacBookなので、Mojaveにダウングレードすることも出来ず、一瞬Macを買い直そうかと思いましたが、なんとかする方法があったのでJenkinsで「git lfs」コマンドを通すまでの一連の設定方法を記事にしました(大体上記の記事とおんなじです)
環境
MacBook Pro(16-inch,2019)
macOS Catalina 10.15.2
Jenkins 2.204.1
git 2.25.0
Git LFS 2.9.2
(git、GitLFSはインストール済み)
(gitリポジトリにはGitLFSが入っています)概要
上記のMacBookでgit cloneするだけのテストジョブを作っていたところ以下のようなエラーが出ました。
stderr: git-lfs filter-process: git-lfs: command not found上記の環境の通り、GitLFSはインストール済みです。が、Jenkinsからの実行だとコマンドが通らないようなので、通るように設定します。
対応
原因はGitLFSの実行ファイルが「/usr/local/bin/」にあり、Jenkinsからだとパスが通らない為になります。
なので、シンボリックリンクを作ってパスが通るようにします。SIPを無効化する
ということで、「/usr/bin/」にシンボリックリンクを作るのですが、システム保護(SIP)があるので無効化します。
- まず、Macをリカバリーモードで起動します。 一度電源を切り、Cmd+Rを押しながらMacを起動します(リンゴマークが出れば離してOK)
- 管理者アカウントのアイコンが表示されたウィンドウが出てくるので「次へ」をクリックし、パスワードを入力、ログインします。
- 画面上部のメニューバーから「ユーティリティ→ターミナル」をクリック
- ターミナルで
csrutil disable
を実行し、再起動します- これでSIPが無効化されます。
初心者向け MacでOperation not permittedの解決方法 - Qiita
https://qiita.com/iwaseasahi/items/9d2e29b02df5cce7285dこちらの記事に写真付きで解説されていますのでよく分からなかったら併せて見ると良いかも。
この設定をしないと
Operation not permitted
と怒られます。(Catalina)「/usr/bin/」の読み取り専用を一時的に無効化する
Catalinaでは「usr」などのディレクトリが標準で読み取り専用になります。
macOS 10.15 CatalinaでファイルシステムがRead-Onlyになる仕様はオプトアウトなしで、完全に無効にすることは不可能。 | AAPL Ch.
https://applech2.com/archives/20190610-read-only-system-volume-apfs-refresh.htmlしたがって、記事の通りに「usr/bin」にシンボリックリンクを作ろうとすると
ln: cannot create /usr/bin//git-lfs : Read-only file system
と怒られます。なので下記のコマンドを実行します。
sudo mount -uw /この設定は再起動すると元に戻るので注意してください。
シンボリックリンクを作る
以下のコマンドを実行します
sudo ln -s /usr/local/bin/git-lfs /usr/bin/これまでの設定がうまくいっていれば、コマンドが通るはずです。
以上で、git lfsコマンドが通るようになり、GitLFSを使っているリポジトリでもクローンできるようになったはずです。
Jenkinsのジョブで「Git LFS pull after checkout」を追加
「ソースコード管理→追加処理」から「Git LFS pull after checkout」を選択して、処理を追加します。
これを忘れるとUnityから開けないファイルが発生するようです。おわりに
記事を書きながら調べてみるとPATHを設定するシェルを書く解決方法もあるみたいです。
[JENKINS-52857] Cannot find git-lfs when it is not installed in /usr/bin/ - Jenkins JIRA
https://issues.jenkins-ci.org/browse/JENKINS-52857?focusedCommentId=380803&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-380803今回はやりませんでしたが、ご参考までに。
Catalinaでは、今回の問題以外にも、UnityがHub経由から出ないとインストールできない問題があったり色々悩まされることが多いです。つらい。
参考文献
・初心者向け MacでOperation not permittedの解決方法 - Qiita
https://qiita.com/iwaseasahi/items/9d2e29b02df5cce7285d・SIP is disabled, but /usr/bin is write protected anyway (macOS Catalina beta 10.5) - Stack Overflow
https://stackoverflow.com/questions/57440334/sip-is-disabled-but-usr-bin-is-write-protected-anyway-macos-catalina-beta-10
- 投稿日:2020-01-22T20:51:16+09:00
pre-commitとtextlintを使ってHTMLに潜むゼロ幅スペース文字や記号の表記ゆれを倒す
概要
括弧や数字の全角半角が表記揺れしていたり、
href
内にゼロ幅スペースが紛れ込んでいてリンク切れが起こってしまったりすることをtextlintを使って防ごうという記事です。textlintとは?
文章の校正をしてくれるリンターツールです。漢字よりひらがなのほうがいい場合や、「てにをは」がおかしいような文章を指摘してくれます。
導入手順
1. プロジェクトの作成
※ この工程は
package.json
を生成するものです。すでにある方はスキップしてください。npm init2. パッケージのインストール
npm install --save-dev textlint textlint-rule-prh # textlint関係 npm install --save-dev husky lint-staged # pre-commit関係
- textlint:textlint本体
- textlint-rule-prh:textlintで使う辞書を読み込めるようにするためのもの
- @textlint/textlint-plugin-text:もともとtextlint本体に付属するプレーンテキスト用のプラグイン
3. pre-commitが動作するように設定する
package.json
に次の項目を追記してください。{ "husky": { "hooks": { "pre-commit": "lint-staged" } }, "lint-staged": { "*.html": "textlint" } }4. textlintの設定ファイルを作成
./node_modules/.bin/textlint --init
作成された
.textlintrc
ファイルの中身を次のように上書きしてください。
これでtextlintがHTMLファイルを読むようになり、オリジナルの辞書を利用するようになります。※今回は使いませんがHTMLを読むためのプラグイン「
textlint-plugin-html
」については後述します。{ "filters": {}, "rules": { "prh": { "rulePaths": ["./prh.yml"] } }, "plugins": { "@textlint/text": { "extensions": [".html"] } } }5. 辞書ファイルを作成
package.json
と同じ階層にprh.yml
というファイルを作成します。
中身を次のように設定してみてください。version: 1 rules: - expected: VS Code patterns: VSCode prh: 正しい表記はVS Code - expected: "" patterns: "/[\\u034f\\u200b\\u200c\\u200d\\u200e\\u200f\\u2028\\u2029\\u202a\\u202b\\u202c\\u202d\\u202e\\u2061\\u2062\\u2063\\ufeff]/" prh: ゼロ幅スペースを検出しました項目を増やしたいときは次の塊を追加することで対応できます。
patterns
には正規表現も利用できますし、リストで複数項目設定することもできます。- expected: 正しい表記 patterns: 検出する表記 prh: エラーメッセージ(説明文)参考:prh/prh.yml at master · prh/prh
6. 試してみる
プロジェクト内に適当なHTMLファイルを作成します。たとえば、
test.html
など。<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <p>私はVSCodeが好きです</p> <p>ここに→""←ゼロ幅スペース文字がいます</p> </body> </html>このHTMLファイルが
package.json
と同じ階層にあるとき、次のようなコマンドでリンターに検査させられます。./node_modules/.bin/textlint test.htmlするとおそらく次のようなログがでるはずです。
D:\dummy\dummy\test.html 10:6 ✓ error VSCode => VS Code 正しい表記はVS Code prh 11:9 ✓ error => ゼロ幅スペースを検出しました prh ✖ 2 problems (2 errors, 0 warnings) ✓ 2 fixable problems. Try to run: $ textlint --fix [file]出ない場合は、
node_modules
フォルダを削除し、npm i
コマンドを実行してみてください。7. コミットしてみる
うまくpre-commitが動作していれば次のようなエラーが出てコミットが中断されるはずです。
こちらもうまく出ない場合は、node_modules
フォルダを削除し、npm i
コマンドを実行してみてください。Sourcetree
TortoiseGit
いろいろ試してみよう
検出には正規表現も使えるので、他にも様々な表記ゆれや誤実装を回収できそうです。
- expected: ( patterns: ( prh: 全角括弧を利用してください - expected: ) patterns: ) prh: 全角括弧を利用してくださいなどなど…。Webサイトの運用で表記ゆれやゼロ幅スペースにお困りの場合は試してみてください。
タグを無視する
textlint-plugin-html
HTMLのタグを無視させたい場合は
textlint-plugin-html
を一緒にインストールしてください。npm i -D textlint-plugin-html
.textlintrc
の設定は次のようになります。{ "filters": {}, "rules": { "prh": { "rulePaths": ["./prh.yml"] } }, "plugins": [ "html" ] }なお、どうやら
©
などは「©」として解釈されるようなので、不要な実態参照を検出するルールはできない模様。たぶん。おそらく。検出されない場合がある(追記)
コードの順番など、特定のケースでうまく検出されない場合がある模様。調査中。
https://github.com/textlint-rule/textlint-rule-prh/issues/74参考文献
- 投稿日:2020-01-22T16:48:07+09:00
NetCommons3/app/Plugin下の各リポジトリでgit config core.filemode falseする
NetCommons3はPluginが全部別々のGitリポジトリになってます。
開発環境でその各プラグイン全部が core.filemode trueになってたので、まとめてgit config core.filemode false
にしたくてシェルスクリプトでゴニョゴニョ下記で無事目的をはたせました。
#!/bin/sh # cd NetCommons3/app/ # bash gitCoreFileModeFalse.sh で実行 # dir_path="Plugin/*" dirs=`find $dir_path -type d -maxdepth 0` for dir in $dirs; do echo $dir cd $dir git config core.filemode false cd ../../ doneGist: https://gist.github.com/RyujiAMANO/48b0d6d2ea074463b17f676a6e6cea3e
参考
- 投稿日:2020-01-22T12:27:08+09:00
Quartus用のgitignoreを作る
はじめに
今まで個々のHDLしかgitで管理していなかったため
Quartusプロジェクト用のgitignoreファイルを作りました。
備忘録として残します。HPSは管理対象に入っていません。
環境
Quartus Prime Version 18.1.0 build 625 09/12/2018 SJ Lite edition
gitignoreファイル
gitignore.ioで生成したQuartusのgitignoreを元に作成しました。
*.* !/*.gitignore # ignore Quartus generated folders /db/ /incremental_db/ /simulation/ /timing/ /testbench/ /*_sim/ # project files !*.qpf !*.qsf # source files !*.bdf !*.vhd !*.v !*.sv # IP core files !*.qip !*.sip !*.bsf # SOPC builder project source files !*.ptf !*.bsf # board description !**/class.ptf # sdc files: !*.sdc # tcl files: !*.tcl変更点
Quarutusが生成するフォルダを除外
論理合成やシミュレーション時に生成されるフォルダの除外を追加しました。
# Quartus generated folders /db/ /incremental_db/ /simulation/ /timing/ /testbench/ /*_sim/SystemVerilogファイルを追加
SystemVerilogでコードを書く場合があるため追加しました。
# source files ... !*.sv.qws(Quartus Window Settings ?)を管理対象外に変更
guiの設定は不要なので以下の記述を削除しました。
!*.qwsIP関連のファイルを追加
IP生成時に追加されるファイルを追加しました。
.bsf
も生成されますが元々のgitignoreに入っています。# IP core files !*.qip !*.sipタイミング解析用のファイルを追加
sdcファイルを追加しました。
# sdc files: !*.sdc書き込み用のバイナリファイルを削除
プロジェクトから生成できるので以下の記述を削除しました。
巨大なプロジェクトの場合は生成に必要な時間が長くなるため管理対象にするのもよいと思います。!*.sofソフト関連を削除
もともとコメントアウトされていたので削除しました。
## tbdとりあえず残したもの
各基板用のファイル
評価ボードなどを使う場合に生成されると思われます。
# board description !**/class.ptf参考
https://www.gitignore.io/api/alteraquartusii
thomasrussellmurphy/quartus-DE0-project - .gitignore
https://www.gitignore.io
/var/log/hikalium - QuartusのプロジェクトをGitで管理する
- 投稿日:2020-01-22T12:25:43+09:00
git logから最新タグ以降の `Merge pull request` だけを抜き出す
やりたいこと
- 本番リリース毎に最新のコミットに対してタグを付けているので、リリース時に本番リリースされていない
Merge pull request
コミットの確認をしたい
- 本番リリース前の最終チェックで、何が反映されるのか毎回手動で確認していたから何とかしたかった
- 最新のタグが付いたコミットも表示させる
シェルコマンド
git log --pretty=format:'[%ad] %s %D' --date=iso --decorate-refs=tags | grep Merge.*pull | awk -F, '{if ( $0 ~ /tag\:/ ) {print; exit 0} else {print}}'alias登録用
alias git-log-check="git log --pretty=format:'[%ad] %s %D' --date=iso --decorate-refs=tags | grep Merge.*pull | awk -F, '{if ( \$0 ~ /tag\:/ ) {print; exit 0} else {print}}'" a
- awkで利用する変数
$0
に対してエスケープが必要なのに気づくのにすごく時間がかかった参考
いつもQiitaには感謝しています。
- 投稿日:2020-01-22T11:33:29+09:00
2020年の開発者が知っておくべき11の必須技能(回答編)
2020年の開発者が知っておくべき11の必須スキル
https://qiita.com/rana_kualu/items/c79a16ff503c86b2748311 Essential Skills Software Developers should Learn in 2020
https://dev.to/javinpaul/11-essential-skills-software-developers-should-learn-in-2020-1bioTop 11 Essentials Skills for Software Developers in 2020
1) Containers (Docker and Kubernetes)
2) Cloud Platform (AWS, GCP, or Azure)
3) Data Structure and Algorithm
4) A Version Control Tool (Git)
5) One Text Editors (VIM)
6) IDEs (VSCode or IntelliJIDEA)
7) Database and SQL
8) UNIX (Linux)
9) An OOP Programming language (C++, Java or Python)
10) Networking basics
11) One Scripting language11の技能を自己評価してみる。
0:知らない、触ったことがない
1:知ってる。使ったことがあるかもしれない。
2:誰かに相談できれば仕事で使える。
3:仕事に使っている。
4:改良に取り組んでいる。点数を書いたら、その数だけURLを示す。
category と examplesに分けてみると、見出しにやや整合性がない。
下記表では、適当に補足・補正してみる。
category examples value Containers Docker and Kubernetes 3 Cloud Platform AWS, GCP, or Azure 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 A Version Control Tool git 3 One Text Editors vim or Eclipse 4 IDEs VSCode or IntelliJIDEA 3 Database and SQL Oracle, SQL Server or MySQL 2 Unix or Linux Ubuntu, Raspbian or Debian 4 An OOP Programming language C++, Java or JavaScript 3 Networking basics TCP/IP and Wi-Fi 4 One Scripting language Python or Ruby 3 大事なのはでこぼこ。他よりよいのが1つ以上、他より悪いのを1つ以上書くこと。
私の場合は、Networkが専門で、BSDを対抗試験にDebian(linux)でコンパイルしてきた。エディタは作業の要。
苦手なのはDB、リレーショナルDBの概念と実装の隙間の大きさに戸惑う。下記の一部の記事は、失敗だったり、未完だったり、これから該当する技術を書く予定のものがあります。
暖かいご指導のほどお願いいたします。1) Containers (Docker and Kubernetes):3
docker(18) なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2docker(1)利用を勧める17の理由
https://qiita.com/kaizen_nagoya/items/c4e5075142bf5e11ddbedocker(0) 資料集
https://qiita.com/kaizen_nagoya/items/45699eefd62677f69c1d2) Cloud Platform (AWS, GCP, or Azure):3
「Qiitaのいろいろランキング2019」への感謝と提案
https://qiita.com/kaizen_nagoya/items/40b8557a20e8d75d62b5日鉄ソリューションズのプライベートクラウドは、顧客満足度1位になっているほか、データサイエンティストの行事でDataRobotより上位の2位になっていることを記載。
転職(2) 転職者による、転職者のための、転職者の履歴、業績、面接
https://qiita.com/kaizen_nagoya/items/162fbb954deb886464bfクラウドを利用するにあたってdockerを利用しているとよい点を記載。
製造業における機械学習
https://qiita.com/kaizen_nagoya/items/fbe846de16f74bea1d6f製造業における機械学習でクラウド利用について記載。
3) Data Structure and Algorithm:3
機械学習をここに入れてもいいかもしれない。機械学習は、データ構造化
『フカシギの数え方』 おねえさんといっしょ:組み合わせ爆発の凄さ
https://qiita.com/kaizen_nagoya/items/f309b0c2bb015bbc71c3仮説・検証(153)成功体験は語っても、成功体験に頼らないために。清水吉男・田中伸明
https://qiita.com/kaizen_nagoya/items/d32adfaf7b2568bfd9d2データ中心設計で田中伸明さんと連名で安全工学シンポジウム等で発表させていただいているのは光栄。
仮説・検証(122)分析と設計
https://qiita.com/kaizen_nagoya/items/d7341c407026af61f2164) A Version Control Tool (Git):3
仮説・検証(51)公開算譜は機敏だ(open source is agile)GitHub and docker
https://qiita.com/kaizen_nagoya/items/5dd49a046b5991af3a5e卒業論文、修士論文、博士論文は github/gitlab/bitbacketのprivate利用をお勧め
https://qiita.com/kaizen_nagoya/items/eb9945a2649f6f3eabd0現在努力中
https://github.com/kaizen-nagoya5) One Text Editors (VIM):4
VZエディタ移植(porting)に当たって実施したことと成果
https://qiita.com/kaizen_nagoya/items/5551be98dcbed8f41949「アセンブラへの道」組立語(assembler)・機械語(machine language)・CPU
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2令和で成果を出す予定のソフトウェア・プログラミング・IT(一部、平成のコピー)
https://qiita.com/kaizen_nagoya/items/d7eae2ca3229eda72f88仮説・検証(139)新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的
https://qiita.com/kaizen_nagoya/items/db993b1536055029f7c86) IDEs (VSCode or IntelliJIDEA):3
docker(39) Cコンパイラ3種をdockerで
https://qiita.com/kaizen_nagoya/items/77184cf005490d7579e6g++, clang++ and vscode++ をdockerで(まだエラー中)
https://qiita.com/kaizen_nagoya/items/825e9bcb017925e0fc5adocker and vscode not visual studio code
https://qiita.com/kaizen_nagoya/items/165a281570a8c62ca50a7) Database and SQL:2
仮説・検証(163)生産縮小、規模縮小、人員縮小時には自動化道具を増強
https://qiita.com/kaizen_nagoya/items/8df1dc7d3a5c7869d3c2Python で SQL
https://qiita.com/kaizen_nagoya/items/1a210fd10efaead88f688) UNIX (Linux):4
Posix Test Suite docker downloads, tar, install
https://qiita.com/kaizen_nagoya/items/f1e24be04a2405ede00fxtUMLを導入する(linux編)
https://qiita.com/kaizen_nagoya/items/297097cc47a6487d9f20仮説・検証(165)40年でソフトウェア開発の景色はどのぐらい変わったのか?
https://qiita.com/kaizen_nagoya/items/54c17cf751894eef56f8Raspberry Pi(SDカード付き)開封から起動までの時間測定
https://qiita.com/kaizen_nagoya/items/8cde74c07848ec413f7b9) An OOP Programming language (C++, Java or Python):3
Object Oriented Programmingは、物をよく分析してプログラムすればいいだけだと思えば良い。
抽象データ型に対応している言語ならどれでもよい。
Classによる体系化は一手法で、C++によるTemplateの方がいいかもしれない。見出しはわすれば、例の言語を操れればいいと思うとよい。
Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76#_reference-6bf86e567f8b9d0a1028仮説・検証(89)インド、インドネシアとJava、Javascript:接尾辞がついて別物と言うが共通点は多い。
https://qiita.com/kaizen_nagoya/items/2c331ff6654d41d5e157dockerで機械学習(87) with JAVA(1)「Machine Learning: End-to-End guide for Java developers」 By Richard Reese, Jennifer Reese, Bostjan Kaluza, Uday Kamath, Krishna Choppella
10) Networking basics:4
無線網(Wi-Fi)空中線(antenna)(0) 記事一覧(122/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001情報処理技術者試験 ネットワークスペシャリストに合格
https://qiita.com/kaizen_nagoya/items/407857392ca5c5677ee4「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。
https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e通信エミュレータの移植
https://qiita.com/kaizen_nagoya/items/ce505bbea4229b83e93b11) One Scripting language:3
shellでもいいかも。自動実行できればいい。
Windows(M.S.)にPython3(Anaconda3)を導入する(7つの罠)
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679docker(19) 言語処理100本ノックをdockerで。python覚えるのに最適。
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4転職(16) 65歳からのプログラミング入門
https://qiita.com/kaizen_nagoya/items/1561f910c275b22d7c9f並べ替え
11の項目を、自分が大事だと思う順番に並び替えるのも良い。
4) A Version Control Tool (Git)
1) Containers (Docker and Kubernetes)
2) Cloud Platform (AWS, GCP, or Azure)
3) Data Structure and Algorithm5) One Text Editors (VIM)
6) IDEs (VSCode or IntelliJIDEA)
7) Database and SQL
8) UNIX (Linux)
9) An OOP Programming language (C++, Java or Python)
10) Networking basics
11) One Scripting language参考資料(reference)
一覧の一覧 a directory of directories of mine.
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39docker(59) Githubとdocker
https://qiita.com/kaizen_nagoya/items/f7e142cd283a1c314234プログラマが知っているとよい色使い(JIS安全色)
https://qiita.com/kaizen_nagoya/items/cb7eb3199b0b98904a35参考文献駆動執筆(references driven writing)・デンソークリエイト編
https://qiita.com/kaizen_nagoya/items/b27b3f58b8bf265a5cd1
- 投稿日:2020-01-22T11:33:29+09:00
2020年の開発者が知っておくべき11の必須技能→回答編 → 並べ替え→項目合併
2020年の開発者が知っておくべき11の必須スキル
https://qiita.com/rana_kualu/items/c79a16ff503c86b2748311 Essential Skills Software Developers should Learn in 2020
https://dev.to/javinpaul/11-essential-skills-software-developers-should-learn-in-2020-1bioTop 11 Essentials Skills for Software Developers in 2020
1) Containers (Docker and Kubernetes)
2) Cloud Platform (AWS, GCP, or Azure)
3) Data Structure and Algorithm
4) A Version Control Tool (Git)
5) One Text Editors (VIM)
6) IDEs (VSCode or IntelliJIDEA)
7) Database and SQL
8) UNIX (Linux)
9) An OOP Programming language (C++, Java or Python)
10) Networking basics
11) One Scripting language11の技能を自己評価してみる。
0:知らない、触ったことがない
1:知ってる。使ったことがあるかもしれない。
2:誰かに相談できれば仕事で使える。
3:仕事に使っている。
4:改良に取り組んでいる。点数を書いたら、その数だけURLを示す。
各みだしを category と examplesに分けてみる。見出しにやや整合性がない気がした。
下記表では、適当に補足・補正してみた。一番右の列が自己評価。
category examples value Containers Docker and Kubernetes 3 Cloud Platform AWS, GCP, or Azure 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 A Version Control Tool git 3 One Text Editors vim or Eclipse 4 IDEs VSCode or IntelliJIDEA 3 Database and SQL Oracle, SQL Server or MySQL 2 Unix or Linux Ubuntu, Raspbian or Debian 4 An OOP Programming language C++, Java or JavaScript 3 Networking basics TCP/IP and Wi-Fi 4 One Scripting language Python or Ruby 3 大事なのはでこぼこ。他よりよいのが1つ以上、他より悪いのを1つ以上書くこと。
全部同じ値は役に立たない。私の場合は、Networkが専門で、BSDを対抗試験にDebian(linux)でコンパイルしてきた。エディタは作業の要。
苦手なのはDB、リレーショナルDBの概念と実装の隙間の大きさに戸惑う。下記の一部の記事は、失敗だったり、未完だったり、これから該当する技術を書く予定のものがあります。
うまく行っていないもので解決する方法、誤字、誤解などにお気づきになられましたら、暖かいご指導のほどお願いいたします。1) Containers (Docker and Kubernetes):3
これまで、色々な版での試験をするのに、全部別々のdockerを作ってhubに登録しとけば、いつでも必要な版をすぐに取り出せて便利。pythonでも、各版ごとにdocker作っておくとか。
docker(18) なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2docker(1)利用を勧める17の理由
https://qiita.com/kaizen_nagoya/items/c4e5075142bf5e11ddbedocker(0) 資料集
https://qiita.com/kaizen_nagoya/items/45699eefd62677f69c1d2) Cloud Platform (AWS, GCP, or Azure):3
いろいろなcloudの違いに依存されないためには、dockerで作ったものがそのままうごくサービスに限定して基本的な構造を設計するとよいかもというのが経験則。
「Qiitaのいろいろランキング2019」への感謝と提案
https://qiita.com/kaizen_nagoya/items/40b8557a20e8d75d62b5日鉄ソリューションズのプライベートクラウドは、顧客満足度1位になっているほか、データサイエンティストの行事でDataRobotより上位の2位になっていることを記載。
転職(2) 転職者による、転職者のための、転職者の履歴、業績、面接
https://qiita.com/kaizen_nagoya/items/162fbb954deb886464bfクラウドを利用するにあたってdockerを利用しているとよい点を記載。
製造業における機械学習
https://qiita.com/kaizen_nagoya/items/fbe846de16f74bea1d6f製造業における機械学習でクラウド利用について記載。
3) Data Structure and Algorithm:3
機械学習をここに入れてもいいかもしれない。機械学習は、データ構造化と算法が鍵かも。
『フカシギの数え方』 おねえさんといっしょ:組み合わせ爆発の凄さ
https://qiita.com/kaizen_nagoya/items/f309b0c2bb015bbc71c3仮説・検証(153)成功体験は語っても、成功体験に頼らないために。清水吉男・田中伸明
https://qiita.com/kaizen_nagoya/items/d32adfaf7b2568bfd9d2データ中心設計で田中伸明さんと連名で安全工学シンポジウム等で発表させていただいているのは光栄。
仮説・検証(122)分析と設計
https://qiita.com/kaizen_nagoya/items/d7341c407026af61f2164) A Version Control Tool (Git):3
版管理がこんなに楽になるなんて。
仮説・検証(51)公開算譜は機敏だ(open source is agile)GitHub and docker
https://qiita.com/kaizen_nagoya/items/5dd49a046b5991af3a5e卒業論文、修士論文、博士論文は github/gitlab/bitbacketのprivate利用をお勧め
https://qiita.com/kaizen_nagoya/items/eb9945a2649f6f3eabd0現在努力中
https://github.com/kaizen-nagoya5) One Text Editors (VIM):4
VZエディタ移植(porting)に当たって実施したことと成果
https://qiita.com/kaizen_nagoya/items/5551be98dcbed8f41949「アセンブラへの道」組立語(assembler)・機械語(machine language)・CPU
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2令和で成果を出す予定のソフトウェア・プログラミング・IT(一部、平成のコピー)
https://qiita.com/kaizen_nagoya/items/d7eae2ca3229eda72f88仮説・検証(139)新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的
https://qiita.com/kaizen_nagoya/items/db993b1536055029f7c86) IDEs (VSCode or IntelliJIDEA):3
docker(39) Cコンパイラ3種をdockerで
https://qiita.com/kaizen_nagoya/items/77184cf005490d7579e6g++, clang++ and vscode++ をdockerで(まだエラー中)
https://qiita.com/kaizen_nagoya/items/825e9bcb017925e0fc5adocker and vscode not visual studio code
https://qiita.com/kaizen_nagoya/items/165a281570a8c62ca50a7) Database and SQL:2
仮説・検証(163)生産縮小、規模縮小、人員縮小時には自動化道具を増強
https://qiita.com/kaizen_nagoya/items/8df1dc7d3a5c7869d3c2Python で SQL
https://qiita.com/kaizen_nagoya/items/1a210fd10efaead88f688) UNIX (Linux):4
Posix Test Suite docker downloads, tar, install
https://qiita.com/kaizen_nagoya/items/f1e24be04a2405ede00fxtUMLを導入する(linux編)
https://qiita.com/kaizen_nagoya/items/297097cc47a6487d9f20仮説・検証(165)40年でソフトウェア開発の景色はどのぐらい変わったのか?
https://qiita.com/kaizen_nagoya/items/54c17cf751894eef56f8Raspberry Pi(SDカード付き)開封から起動までの時間測定
https://qiita.com/kaizen_nagoya/items/8cde74c07848ec413f7b9) An OOP Programming language (C++, Java or Python):3
Object Oriented Programmingは、物をよく分析してプログラムすればいいだけだと思えば良い。
プログラミング言語をよく知らないうちなら理解可能な概念。
特定の言語を知ってしまうと、その言語での解決策の案に囚われて、すごく狭い理解しかしない人たちがいるかもしれない。抽象データ型に対応している言語ならどれでもよい。
Classによる体系化は一手法でお勧めできない。C++ならTemplateを駆使したり、拡張するといいかもしれない。見出しは忘れて、一つの言語を操れればいいと思うとよい。
Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76#_reference-6bf86e567f8b9d0a1028仮説・検証(89)インド、インドネシアとJava、Javascript:接尾辞がついて別物と言うが共通点は多い。
https://qiita.com/kaizen_nagoya/items/2c331ff6654d41d5e157dockerで機械学習(87) with JAVA(1)「Machine Learning: End-to-End guide for Java developers」 By Richard Reese, Jennifer Reese, Bostjan Kaluza, Uday Kamath, Krishna Choppella
10) Networking basics:4
無線網(Wi-Fi)空中線(antenna)(0) 記事一覧(122/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001情報処理技術者試験 ネットワークスペシャリストに合格
https://qiita.com/kaizen_nagoya/items/407857392ca5c5677ee4「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。
https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e通信エミュレータの移植
https://qiita.com/kaizen_nagoya/items/ce505bbea4229b83e93b11) One Scripting language:3
shellでもいいかも。自動実行できればいい。
Windows(M.S.)にPython3(Anaconda3)を導入する(7つの罠)
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679docker(19) 言語処理100本ノックをdockerで。python覚えるのに最適。
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4転職(16) 65歳からのプログラミング入門
https://qiita.com/kaizen_nagoya/items/1561f910c275b22d7c9f並べ替え(re sort)
11の項目を、自分が大事だと思う順番に並び替えるのも良い。
K J category examples value 1 4 A Version Control Tool git 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5 One Text Editors vim or Eclipse 4 5 6 IDEs VSCode or IntelliJIDEA 3 6 10 Networking basics TCP/IP and Wi-Fi 4 7 8 Unix or Linux Ubuntu, Raspbian or Debian 4 8 11 One Scripting language Python or Ruby 3 9 9 An OOP Programming language C++, Java or JavaScript 3 10 7 Database and SQL Oracle, SQL Server or MySQL 2 11 2 Cloud Platform AWS, GCP, or Azure 3 自分が得意な分野が真ん中にある。この並べ替えは、一つの意見。他の分野が得意な人は、他の並び方になるだろう。Jは原著者のJavinpaul, kは@kaizen_nagoya。
cloud platformが低いのは、もっと便利になる物が生き残るだろうという想定から。
cloud platformを作るプログラマがもっと頑張ると良い。
Database が低いのも同じ理由。
Unix/Linuxがどんどん便利になって、Raspbianやubuntuのように普及して使いやすくなるともっと上にするかも。項目合併(merge)
IDEにエディタは含むこともあり、One Text Editors とIDEは一つの項目でも良いかもしれない。
UNIXがTCP/IPとともに普及してきたことを考えると、Networking basics と Unix or Linuxも一つの項目でも良いかもしれない。
言語はOOPかどうかはどっちゃでも良くて、One Scripting language と An OOP Programming language もpythonかJavascriptで良いので一つの項目で良いかもしれない。私版「開発者が知っておくべき8の必須技能」に縮退。ただし、Web Serverがないので、Databeseと合体して1項目にした。Data Structure and Algorithmと合体するかどうかは悩んだ。
A version control toolにはissuとwikiも合わせたdocument toolに拡張した。
K J category examples value 1 4 A Version Control and document Tool GitHub, gitlab or bitbucket 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5+6 One Text Editors and IDEs vim, Eclipse, VSCode or IntelliJIDEA 4 5 10+8 Networking and Unix(Linux) TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian 4 6 11+9 One Scripting or Programming llanguage Python, Ruby, C++, Java or JavaScript 3 7 7 Web and Database Apache or Nginx and Oracle, SQL Server or MySQL 2 8 2 Cloud Platform AWS, GCP, or Azure 3 おお、重複感が減りすっきりした。
どんな資料も、プログラマは再計画(re programming)すると良いかも。
参考資料(reference)
一覧の一覧 a directory of directories of mine.
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39docker(59) Githubとdocker
https://qiita.com/kaizen_nagoya/items/f7e142cd283a1c314234プログラマが知っているとよい色使い(JIS安全色)
https://qiita.com/kaizen_nagoya/items/cb7eb3199b0b98904a35参考文献駆動執筆(references driven writing)・デンソークリエイト編
https://qiita.com/kaizen_nagoya/items/b27b3f58b8bf265a5cd1「平成のうちにやめたかった『ITの7つの無意味な習慣』」に付け加えたかったこと。
https://qiita.com/kaizen_nagoya/items/e6f9c2e0afbf8ab4181c仮説・検証(54)プログラムは音楽だ (A program is a music.)
https://qiita.com/kaizen_nagoya/items/33c9f33581e6886f8ad8文書履歴(document history)
ver. 0.01 初稿 20200122 午前
ver. 0.02 順番並べ替え 20200122 昼
ver. 0.03 項目縮退 20200122 午後1時
ver. 0.04 Web追記 20200122 午後2時
ver. 0.05 参考資料追記 20200122 午後3時
ver. 0.06 表記補正、誤記訂正 20200122 午後4時
- 投稿日:2020-01-22T11:33:29+09:00
2020年の開発者が知っておくべき11の必須技能→回答編 → 並べ替え→項目合併(8項目)
2020年の開発者が知っておくべき11の必須スキル
https://qiita.com/rana_kualu/items/c79a16ff503c86b2748311 Essential Skills Software Developers should Learn in 2020
https://dev.to/javinpaul/11-essential-skills-software-developers-should-learn-in-2020-1bioTop 11 Essentials Skills for Software Developers in 2020
1) Containers (Docker and Kubernetes)
2) Cloud Platform (AWS, GCP, or Azure)
3) Data Structure and Algorithm
4) A Version Control Tool (Git)
5) One Text Editors (VIM)
6) IDEs (VSCode or IntelliJIDEA)
7) Database and SQL
8) UNIX (Linux)
9) An OOP Programming language (C++, Java or Python)
10) Networking basics
11) One Scripting language回答編
11の技能を自己評価してみる。
0:知らない、触ったことがない
1:知ってる。使ったことがあるかもしれない。
2:誰かに相談できれば仕事で使える。
3:仕事に使っている。
4:改良に取り組んでいる。点数を書いたら、その数だけURLを示す。
みだし補正
各みだしを category と examplesに分けてみる。見出しにやや整合性がない気がした。
下記表では、適当に補足・補正してみた。一番右の列が自己評価。
category examples value Containers Docker and Kubernetes 3 Cloud Platform AWS, GCP, or Azure 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 A Version Control Tool git 3 One Text Editors vim, Emacs or Eclipse 4 IDEs VSCode or IntelliJIDEA 3 Database and SQL Oracle, SQL Server or MySQL 2 Unix or Linux Ubuntu, Raspbian or Debian 4 An OOP Programming language C++, Java or JavaScript 3 Networking basics TCP/IP and Wi-Fi 4 One Scripting language Python or Ruby 3 大事なのはでこぼこ。他よりよいのが1つ以上、他より悪いのを1つ以上書くこと。
全部同じ値は役に立たない。私の場合は、Networkが専門で、BSDを対抗試験にDebian(linux)でコンパイルしてきた。エディタは作業の要。
苦手なのはDB、リレーショナルDBの概念と実装の隙間の大きさに戸惑う。下記の一部の記事は、失敗だったり、未完だったり、これから該当する技術を書く予定のものがあります。
うまく行っていないもので解決する方法、誤字、誤解などにお気づきになられましたら、暖かいご指導のほどお願いいたします。回答一覧
1) Containers (Docker and Kubernetes):3
これまで、色々な版での試験をするのに、全部別々のdockerを作ってhubに登録しとけば、いつでも必要な版をすぐに取り出せて便利。pythonでも、各版ごとにdocker作っておくとか。
docker(18) なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2docker(1)利用を勧める17の理由
https://qiita.com/kaizen_nagoya/items/c4e5075142bf5e11ddbedocker(0) 資料集
https://qiita.com/kaizen_nagoya/items/45699eefd62677f69c1d2) Cloud Platform (AWS, GCP, or Azure):3
いろいろなcloudの違いに依存されないためには、dockerで作ったものがそのままうごくサービスに限定して基本的な構造を設計するとよいかもというのが経験則。
「Qiitaのいろいろランキング2019」への感謝と提案
https://qiita.com/kaizen_nagoya/items/40b8557a20e8d75d62b5日鉄ソリューションズのプライベートクラウドは、顧客満足度1位になっているほか、データサイエンティストの行事でDataRobotより上位の2位になっていることを記載。
転職(2) 転職者による、転職者のための、転職者の履歴、業績、面接
https://qiita.com/kaizen_nagoya/items/162fbb954deb886464bfクラウドを利用するにあたってdockerを利用しているとよい点を記載。
製造業における機械学習
https://qiita.com/kaizen_nagoya/items/fbe846de16f74bea1d6f製造業における機械学習でクラウド利用について記載。
3) Data Structure and Algorithm:3
機械学習をここに入れてもいいかもしれない。機械学習は、データ構造化と算法が鍵かも。
『フカシギの数え方』 おねえさんといっしょ:組み合わせ爆発の凄さ
https://qiita.com/kaizen_nagoya/items/f309b0c2bb015bbc71c3仮説・検証(153)成功体験は語っても、成功体験に頼らないために。清水吉男・田中伸明
https://qiita.com/kaizen_nagoya/items/d32adfaf7b2568bfd9d2データ中心設計で田中伸明さんと連名で安全工学シンポジウム等で発表させていただいているのは光栄。
仮説・検証(122)分析と設計
https://qiita.com/kaizen_nagoya/items/d7341c407026af61f2164) A Version Control Tool (Git):3
版管理がこんなに楽になるなんて。
仮説・検証(51)公開算譜は機敏だ(open source is agile)GitHub and docker
https://qiita.com/kaizen_nagoya/items/5dd49a046b5991af3a5e卒業論文、修士論文、博士論文は github/gitlab/bitbacketのprivate利用をお勧め
https://qiita.com/kaizen_nagoya/items/eb9945a2649f6f3eabd0現在努力中
https://github.com/kaizen-nagoya5) One Text Editors (VIM):4
VZエディタ移植(porting)に当たって実施したことと成果
https://qiita.com/kaizen_nagoya/items/5551be98dcbed8f41949「アセンブラへの道」組立語(assembler)・機械語(machine language)・CPU
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2令和で成果を出す予定のソフトウェア・プログラミング・IT(一部、平成のコピー)
https://qiita.com/kaizen_nagoya/items/d7eae2ca3229eda72f88仮説・検証(139)新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的
https://qiita.com/kaizen_nagoya/items/db993b1536055029f7c86) IDEs (VSCode or IntelliJIDEA):3
docker(39) Cコンパイラ3種をdockerで
https://qiita.com/kaizen_nagoya/items/77184cf005490d7579e6g++, clang++ and vscode++ をdockerで(まだエラー中)
https://qiita.com/kaizen_nagoya/items/825e9bcb017925e0fc5adocker and vscode not visual studio code
https://qiita.com/kaizen_nagoya/items/165a281570a8c62ca50a7) Database and SQL:2
仮説・検証(163)生産縮小、規模縮小、人員縮小時には自動化道具を増強
https://qiita.com/kaizen_nagoya/items/8df1dc7d3a5c7869d3c2Python で SQL
https://qiita.com/kaizen_nagoya/items/1a210fd10efaead88f688) UNIX (Linux):4
Posix Test Suite docker downloads, tar, install
https://qiita.com/kaizen_nagoya/items/f1e24be04a2405ede00fxtUMLを導入する(linux編)
https://qiita.com/kaizen_nagoya/items/297097cc47a6487d9f20仮説・検証(165)40年でソフトウェア開発の景色はどのぐらい変わったのか?
https://qiita.com/kaizen_nagoya/items/54c17cf751894eef56f8Raspberry Pi(SDカード付き)開封から起動までの時間測定
https://qiita.com/kaizen_nagoya/items/8cde74c07848ec413f7b9) An OOP Programming language (C++, Java or Python):3
Object Oriented Programmingは、物をよく分析してプログラムすればいいだけだと思えば良い。
プログラミング言語をよく知らないうちなら理解可能な概念。
特定の言語を知ってしまうと、その言語での解決策の案に囚われて、すごく狭い理解しかしない人たちがいるかもしれない。抽象データ型に対応している言語ならどれでもよい。
COBOLは、元々Object Orientedな言語で、OOCOBOLでなくてもよいかも。機械語がいちばんのObject Oriented Languageだとずっと主張しつづけてきた。
Classによる体系化はOOPの一手法かもしれないがお勧めできない。C++ならTemplateを駆使したり、拡張するといいかもしれない。見出しは忘れて、一つの言語を操れればいいと思うとよいかも。
Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76#_reference-6bf86e567f8b9d0a1028仮説・検証(89)インド、インドネシアとJava、Javascript:接尾辞がついて別物と言うが共通点は多い。
https://qiita.com/kaizen_nagoya/items/2c331ff6654d41d5e157dockerで機械学習(87) with JAVA(1)「Machine Learning: End-to-End guide for Java developers」 By Richard Reese, Jennifer Reese, Bostjan Kaluza, Uday Kamath, Krishna Choppella
https://qiita.com/kaizen_nagoya/items/2d3a4f168b4c9a28b32e10) Networking basics:4
TCP/IPを基本としてWi-Fiまで幅広く網羅してもらえると嬉しい。
無線網(Wi-Fi)空中線(antenna)(0) 記事一覧(122/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001情報処理技術者試験 ネットワークスペシャリストに合格
https://qiita.com/kaizen_nagoya/items/407857392ca5c5677ee4「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。
https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e通信エミュレータの移植
https://qiita.com/kaizen_nagoya/items/ce505bbea4229b83e93b11) One Scripting language:3
shellでもいいかも。自動実行できればいい。
Windows(M.S.)にPython3(Anaconda3)を導入する(7つの罠)
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679docker(19) 言語処理100本ノックをdockerで。python覚えるのに最適。
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4転職(16) 65歳からのプログラミング入門
https://qiita.com/kaizen_nagoya/items/1561f910c275b22d7c9f並べ替え(re sort)
11の項目を、自分が大事だと思う順番に並び替えるのも良い。
K J category examples value 1 4 A Version Control Tool git 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5 One Text Editors vim, Emacs or Eclipse 4 5 6 IDEs VSCode or IntelliJIDEA 3 6 10 Networking basics TCP/IP and Wi-Fi 4 7 8 Unix or Linux Ubuntu, Raspbian or Debian 4 8 11 One Scripting language Python or Ruby 3 9 9 An OOP Programming language C++, Java or JavaScript 3 10 7 Database and SQL Oracle, SQL Server or MySQL 2 11 2 Cloud Platform AWS, GCP, or Azure 3 自分が得意な分野が真ん中にある。この並べ替えは、一つの意見。他の分野が得意な人は、他の並び方になるだろう。Jは原著者のJavinpaul, kは@kaizen_nagoya。
cloud platformが低いのは、もっと便利になる物が生き残るだろうという想定から。
cloud platformを作るプログラマがもっと頑張ると良い。
Database が低いのも同じ理由。
Unix/Linuxがどんどん便利になって、Raspbianやubuntuのように普及して使いやすくなるともっと上にするかも。項目合併(merge)
IDEにエディタは含むこともあり、One Text Editors とIDEは一つの項目でも良いかもしれない。
UNIXがTCP/IPとともに普及してきたことを考えると、Networking basics と Unix or Linuxも一つの項目でも良いかもしれない。
言語はOOPかどうかはどっちゃでも良くて、One Scripting language と An OOP Programming language もpythonかJavascriptで良いので一つの項目で良いかもしれない。私版「開発者が知っておくべき8の必須技能」に縮退。
K J category examples value 1 4 A Version Control git 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5+6 One Text Editors and IDEs vim, Emacs, Eclipse, VSCode or IntelliJIDEA 4 5 10+8 Networking and Unix(Linux) TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian 4 6 11+9 One Scripting or Programming llanguage Python, Ruby, C++, Java or JavaScript 3 7 7 Database Oracle, SQL Server or MySQL 2 8 2 Cloud Platform AWS, GCP, or Azure 3 おお、重複感が減りすっきりした。もちろん、他の統合方法もいっぱいあると思う。
自分なりに整理すると仕事で役立つかも。どんな資料も、再利用可能な方法で再計画(re programming)するのがprogrammer流かも。
内容追加(addition)
A version control toolにはissuとwikiも合わせたdocument toolに拡張した。
Web Serverがないので、Databeseと合体して1項目にした。Data Structure and Algorithmと合体するかどうかは悩んだ。
K J category examples value 1 4 A Version Control and document Tool GitHub, gitlab or bitbucket 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5+6 One Text Editors and IDEs vim, Emacs, Eclipse, VSCode or IntelliJIDEA 4 5 10+8 Networking and Unix(Linux) TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian 4 6 11+9 One Scripting or Programming llanguage Python, Ruby, C++, Java or JavaScript 3 7 7 Web and Database Apache or Nginx and Oracle, SQL Server or MySQL 2 8 2 Cloud Platform AWS, GCP, or Azure 3 参考資料(reference)
一覧の一覧 a directory of directories of mine.
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39docker(59) Githubとdocker
https://qiita.com/kaizen_nagoya/items/f7e142cd283a1c314234プログラマが知っているとよい色使い(JIS安全色)
https://qiita.com/kaizen_nagoya/items/cb7eb3199b0b98904a35参考文献駆動執筆(references driven writing)・デンソークリエイト編
https://qiita.com/kaizen_nagoya/items/b27b3f58b8bf265a5cd1「平成のうちにやめたかった『ITの7つの無意味な習慣』」に付け加えたかったこと。
https://qiita.com/kaizen_nagoya/items/e6f9c2e0afbf8ab4181c仮説・検証(54)プログラムは音楽だ (A program is a music.)
https://qiita.com/kaizen_nagoya/items/33c9f33581e6886f8ad8文書履歴(document history)
ver. 0.01 初稿 20200122 午前
ver. 0.02 順番並べ替え 20200122 昼
ver. 0.03 項目縮退 20200122 午後1時
ver. 0.04 Web追記 20200122 午後2時
ver. 0.05 参考資料追記 20200122 午後3時
ver. 0.06 表記補正、誤記訂正、Emacs追記 20200122 午後4時
ver. 0.07 構造見直し 20200122 午後5時
ver. 0.08 抜け漏れ補正 20200122 夜
ver. 0.09 内容追加(addition)追記 20200123
- 投稿日:2020-01-22T11:33:29+09:00
2020年の開発者が知っておくべき11の必須技能→回答編 → 並べ替え→項目合併(8項目)→内容追記
2020年の開発者が知っておくべき11の必須スキル
https://qiita.com/rana_kualu/items/c79a16ff503c86b2748311 Essential Skills Software Developers should Learn in 2020
https://dev.to/javinpaul/11-essential-skills-software-developers-should-learn-in-2020-1bioTop 11 Essentials Skills for Software Developers in 2020
1) Containers (Docker and Kubernetes)
2) Cloud Platform (AWS, GCP, or Azure)
3) Data Structure and Algorithm
4) A Version Control Tool (Git)
5) One Text Editors (VIM)
6) IDEs (VSCode or IntelliJIDEA)
7) Database and SQL
8) UNIX (Linux)
9) An OOP Programming language (C++, Java or Python)
10) Networking basics
11) One Scripting language回答編
11の技能を自己評価してみる。
0:知らない、触ったことがない
1:知ってる。使ったことがあるかもしれない。
2:誰かに相談できれば仕事で使える。
3:仕事に使っている。
4:改良に取り組んでいる。点数を書いたら、その数だけURLを示す。
みだし補正
各みだしを category と examplesに分けてみる。見出しにやや整合性がない気がした。
下記表では、適当に補足・補正してみた。一番右の列が自己評価。
category examples value Containers Docker and Kubernetes 3 Cloud Platform AWS, GCP, or Azure 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 A Version Control Tool git 3 One Text Editors vim, Emacs or Eclipse 4 IDEs VSCode or IntelliJIDEA 3 Database and SQL Oracle, SQL Server or MySQL 2 Unix or Linux Ubuntu, Raspbian or Debian 4 An OOP Programming language C++, Java or JavaScript 3 Networking basics TCP/IP and Wi-Fi 4 One Scripting language Python or Ruby 3 大事なのはでこぼこ。他よりよいのが1つ以上、他より悪いのを1つ以上書くこと。
全部同じ値は役に立たない。私の場合は、Networkが専門で、BSDを対抗試験にDebian(linux)でコンパイルしてきた。エディタは作業の要。
苦手なのはDB、リレーショナルDBの概念と実装の隙間の大きさに戸惑う。下記の一部の記事は、失敗だったり、未完だったり、これから該当する技術を書く予定のものがあります。
うまく行っていないもので解決する方法、誤字、誤解などにお気づきになられましたら、暖かいご指導のほどお願いいたします。回答一覧
1) Containers (Docker and Kubernetes):3
これまで、色々な版での試験をするのに、全部別々のdockerを作ってhubに登録しとけば、いつでも必要な版をすぐに取り出せて便利。pythonでも、各版ごとにdocker作っておくとか。
docker(18) なぜdockerで機械学習するか 書籍・ソース一覧作成中 (目標100)
https://qiita.com/kaizen_nagoya/items/ddd12477544bf5ba85e2docker(1)利用を勧める17の理由
https://qiita.com/kaizen_nagoya/items/c4e5075142bf5e11ddbedocker(0) 資料集
https://qiita.com/kaizen_nagoya/items/45699eefd62677f69c1d2) Cloud Platform (AWS, GCP, or Azure):3
いろいろなcloudの違いに依存されないためには、dockerで作ったものがそのままうごくサービスに限定して基本的な構造を設計するとよいかもというのが経験則。
「Qiitaのいろいろランキング2019」への感謝と提案
https://qiita.com/kaizen_nagoya/items/40b8557a20e8d75d62b5日鉄ソリューションズのプライベートクラウドは、顧客満足度1位になっているほか、データサイエンティストの行事でDataRobotより上位の2位になっていることを記載。
転職(2) 転職者による、転職者のための、転職者の履歴、業績、面接
https://qiita.com/kaizen_nagoya/items/162fbb954deb886464bfクラウドを利用するにあたってdockerを利用しているとよい点を記載。
製造業における機械学習
https://qiita.com/kaizen_nagoya/items/fbe846de16f74bea1d6f製造業における機械学習でクラウド利用について記載。
3) Data Structure and Algorithm:3
機械学習をここに入れてもいいかもしれない。機械学習は、データ構造化と算法が鍵かも。
『フカシギの数え方』 おねえさんといっしょ:組み合わせ爆発の凄さ
https://qiita.com/kaizen_nagoya/items/f309b0c2bb015bbc71c3仮説・検証(153)成功体験は語っても、成功体験に頼らないために。清水吉男・田中伸明
https://qiita.com/kaizen_nagoya/items/d32adfaf7b2568bfd9d2データ中心設計で田中伸明さんと連名で安全工学シンポジウム等で発表させていただいているのは光栄。
仮説・検証(122)分析と設計
https://qiita.com/kaizen_nagoya/items/d7341c407026af61f2164) A Version Control Tool (Git):3
版管理がこんなに楽になるなんて。
仮説・検証(51)公開算譜は機敏だ(open source is agile)GitHub and docker
https://qiita.com/kaizen_nagoya/items/5dd49a046b5991af3a5e卒業論文、修士論文、博士論文は github/gitlab/bitbacketのprivate利用をお勧め
https://qiita.com/kaizen_nagoya/items/eb9945a2649f6f3eabd0現在努力中
https://github.com/kaizen-nagoya5) One Text Editors (VIM):4
VZエディタ移植(porting)に当たって実施したことと成果
https://qiita.com/kaizen_nagoya/items/5551be98dcbed8f41949「アセンブラへの道」組立語(assembler)・機械語(machine language)・CPU
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2令和で成果を出す予定のソフトウェア・プログラミング・IT(一部、平成のコピー)
https://qiita.com/kaizen_nagoya/items/d7eae2ca3229eda72f88仮説・検証(139)新人(学生)を指導するよりも新人(学生)に指導してもらった方が効率的
https://qiita.com/kaizen_nagoya/items/db993b1536055029f7c86) IDEs (VSCode or IntelliJIDEA):3
docker(39) Cコンパイラ3種をdockerで
https://qiita.com/kaizen_nagoya/items/77184cf005490d7579e6g++, clang++ and vscode++ をdockerで(まだエラー中)
https://qiita.com/kaizen_nagoya/items/825e9bcb017925e0fc5adocker and vscode not visual studio code
https://qiita.com/kaizen_nagoya/items/165a281570a8c62ca50a7) Database and SQL:2
仮説・検証(163)生産縮小、規模縮小、人員縮小時には自動化道具を増強
https://qiita.com/kaizen_nagoya/items/8df1dc7d3a5c7869d3c2Python で SQL
https://qiita.com/kaizen_nagoya/items/1a210fd10efaead88f688) UNIX (Linux):4
Posix Test Suite docker downloads, tar, install
https://qiita.com/kaizen_nagoya/items/f1e24be04a2405ede00fxtUMLを導入する(linux編)
https://qiita.com/kaizen_nagoya/items/297097cc47a6487d9f20仮説・検証(165)40年でソフトウェア開発の景色はどのぐらい変わったのか?
https://qiita.com/kaizen_nagoya/items/54c17cf751894eef56f8Raspberry Pi(SDカード付き)開封から起動までの時間測定
https://qiita.com/kaizen_nagoya/items/8cde74c07848ec413f7b9) An OOP Programming language (C++, Java or Python):3
Object Oriented Programmingは、物をよく分析してプログラムすればいいだけだと思えば良い。
プログラミング言語をよく知らないうちなら理解可能な概念。
特定の言語を知ってしまうと、その言語での解決策の案に囚われて、すごく狭い理解しかしない人たちがいるかもしれない。抽象データ型に対応している言語ならどれでもよい。
COBOLは、元々Object Orientedな言語で、OOCOBOLでなくてもよいかも。機械語がいちばんのObject Oriented Languageだとずっと主張しつづけてきた。
Classによる体系化はOOPの一手法かもしれないがお勧めできない。C++ならTemplateを駆使したり、拡張するといいかもしれない。見出しは忘れて、一つの言語を操れればいいと思うとよいかも。
Autosar Guidelines C++14 example code compile list(1-169)
https://qiita.com/kaizen_nagoya/items/8ccbf6675c3494d57a76#_reference-6bf86e567f8b9d0a1028仮説・検証(89)インド、インドネシアとJava、Javascript:接尾辞がついて別物と言うが共通点は多い。
https://qiita.com/kaizen_nagoya/items/2c331ff6654d41d5e157dockerで機械学習(87) with JAVA(1)「Machine Learning: End-to-End guide for Java developers」 By Richard Reese, Jennifer Reese, Bostjan Kaluza, Uday Kamath, Krishna Choppella
https://qiita.com/kaizen_nagoya/items/2d3a4f168b4c9a28b32e10) Networking basics:4
TCP/IPを基本としてWi-Fiまで幅広く網羅してもらえると嬉しい。
無線網(Wi-Fi)空中線(antenna)(0) 記事一覧(122/300目標)
https://qiita.com/kaizen_nagoya/items/5e5464ac2b24bd4cd001情報処理技術者試験 ネットワークスペシャリストに合格
https://qiita.com/kaizen_nagoya/items/407857392ca5c5677ee4「基礎からわかるTCP/IP JAVAネットワークプログラミング」Eclipseでコンパイル。Wiresharkでデバッグ。
https://qiita.com/kaizen_nagoya/items/14519536b827fdadb32e通信エミュレータの移植
https://qiita.com/kaizen_nagoya/items/ce505bbea4229b83e93b11) One Scripting language:3
shellでもいいかも。自動実行できればいい。
Windows(M.S.)にPython3(Anaconda3)を導入する(7つの罠)
https://qiita.com/kaizen_nagoya/items/7bfd7ecdc4e8edcbd679docker(19) 言語処理100本ノックをdockerで。python覚えるのに最適。
https://qiita.com/kaizen_nagoya/items/7e7eb7c543e0c18438c4転職(16) 65歳からのプログラミング入門
https://qiita.com/kaizen_nagoya/items/1561f910c275b22d7c9f並べ替え(re sort)
11の項目を、自分が大事だと思う順番に並び替えるのも良い。
K J category examples value 1 4 A Version Control Tool git 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5 One Text Editors vim, Emacs or Eclipse 4 5 6 IDEs VSCode or IntelliJIDEA 3 6 10 Networking basics TCP/IP and Wi-Fi 4 7 8 Unix or Linux Ubuntu, Raspbian or Debian 4 8 11 One Scripting language Python or Ruby 3 9 9 An OOP Programming language C++, Java or JavaScript 3 10 7 Database and SQL Oracle, SQL Server or MySQL 2 11 2 Cloud Platform AWS, GCP, or Azure 3 自分が得意な分野が真ん中にある。この並べ替えは、一つの意見。他の分野が得意な人は、他の並び方になるだろう。Jは原著者のJavinpaul, kは@kaizen_nagoya。
cloud platformが低いのは、もっと便利になる物が生き残るだろうという想定から。
cloud platformを作るプログラマがもっと頑張ると良い。
Database が低いのも同じ理由。
Unix/Linuxがどんどん便利になって、Raspbianやubuntuのように普及して使いやすくなるともっと上にするかも。項目合併(merge)
IDEにエディタは含むこともあり、One Text Editors とIDEは一つの項目でも良いかもしれない。
UNIXがTCP/IPとともに普及してきたことを考えると、Networking basics と Unix or Linuxも一つの項目でも良いかもしれない。
言語はOOPかどうかはどっちゃでも良くて、One Scripting language と An OOP Programming language もpythonかJavascriptで良いので一つの項目で良いかもしれない。私版「開発者が知っておくべき8の必須技能」に縮退。
K J category examples value 1 4 A Version Control git 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5+6 One Text Editors and IDEs vim, Emacs, Eclipse, VSCode or IntelliJIDEA 4 5 10+8 Networking and Unix(Linux) TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian 4 6 11+9 One Scripting or Programming llanguage Python, Ruby, C++, Java or JavaScript 3 7 7 Database Oracle, SQL Server or MySQL 2 8 2 Cloud Platform AWS, GCP, or Azure 3 おお、重複感が減りすっきりした。もちろん、他の統合方法もいっぱいあると思う。
自分なりに整理すると仕事で役立つかも。どんな資料も、再利用可能な方法で再計画(re programming)するのがprogrammer流かも。
内容追加(addition)
A version control toolにはissuとwikiも合わせたdocument toolに拡張した。
Web Serverがないので、Databeseと合体して1項目にした。Data Structure and Algorithmと合体するかどうかは悩んだ。
K J category examples value 1 4 A Version Control and document Tool GitHub, gitlab or bitbucket 3 2 1 Containers Docker and Kubernetes 3 3 3 Data Structure and Algorithm Machine Learning or Quantum Computing 3 4 5+6 One Text Editors and IDEs vim, Emacs, Eclipse, VSCode or IntelliJIDEA 4 5 10+8 Networking and Unix(Linux) TCP/IP, Wi-Fi and Ubuntu, Raspbian or Debian 4 6 11+9 One Scripting or Programming llanguage Python, Ruby, C++, Java or JavaScript 3 7 7 Web and Database Apache or Nginx and Oracle, SQL Server or MySQL 2 8 2 Cloud Platform AWS, GCP, or Azure 3 参考資料(reference)
一覧の一覧 a directory of directories of mine.
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39docker(59) Githubとdocker
https://qiita.com/kaizen_nagoya/items/f7e142cd283a1c314234プログラマが知っているとよい色使い(JIS安全色)
https://qiita.com/kaizen_nagoya/items/cb7eb3199b0b98904a35参考文献駆動執筆(references driven writing)・デンソークリエイト編
https://qiita.com/kaizen_nagoya/items/b27b3f58b8bf265a5cd1「平成のうちにやめたかった『ITの7つの無意味な習慣』」に付け加えたかったこと。
https://qiita.com/kaizen_nagoya/items/e6f9c2e0afbf8ab4181c仮説・検証(54)プログラムは音楽だ (A program is a music.)
https://qiita.com/kaizen_nagoya/items/33c9f33581e6886f8ad8文書履歴(document history)
ver. 0.01 初稿 20200122 午前
ver. 0.02 順番並べ替え 20200122 昼
ver. 0.03 項目縮退 20200122 午後1時
ver. 0.04 Web追記 20200122 午後2時
ver. 0.05 参考資料追記 20200122 午後3時
ver. 0.06 表記補正、誤記訂正、Emacs追記 20200122 午後4時
ver. 0.07 構造見直し 20200122 午後5時
ver. 0.08 抜け漏れ補正 20200122 夜
ver. 0.09 内容追加(addition)追記 20200123
- 投稿日:2020-01-22T11:31:20+09:00
SourceTree SSH 接続で、ユーザ、パスワード入力をミスってハマった
単純パスワード認証のSSH接続でパスワードミスった
お客さんが設置した VPS に、案件リポジトリがあって、そいつにプッシュしているんです。
SSHはユーザ・パスワード認証。リポジトリパスを入力すれば、ユーザ、パスワードの認証ダイアログでますよね。
素直に手打ちすればよかったんですが、横着してお客さんからもらったパスワードとかを記録しているExcelから直接コピペしたんですよ。
セルを選択してコピペすると、末尾に開業コードが入るんですよね。そのおかげで、Access Denied になっちゃったんですよ・・・
認証ダイアログもでてくれない。ローカルリポジトリ削除してクローンしなおしても、認証情報は記録されちゃっているから、認証やり直せないんですよ。
最初は原因がわからず、あれやこれや調べても、Github GitLab とかの鍵交換の記事しかでてこないし、困り果てていたんですよ。
結論
SourceTreeがローカルで認証情報やらキャッシュやら保存しているのは考えればわかること。
そいつを削除しちゃえばいい、ってんでアンインストール。
これ、ローカル情報ってアンインストールしても残るんですね・・・・・ということで手動削除。
C:\Users\ユーザ名\AppData\Local\Atlassianこの中を空っぽにしたら、認証ダイアログでました・・・・
この問題で2時間も使っちゃった・・・
- 投稿日:2020-01-22T02:29:57+09:00
nvmを使ったNode.jsのバージョン管理
これまでWindowsならnodist、Macならnodebrewを使ってきましたが、nvmがユーザー数多いみたい( Google Trend によると)なのでnvm使うことにしたい。
nvmのGitHub上に手順や使い方があるけれど英語でさらに初心者にはさっぱりな部分もあるので自分用の備忘録もかねてのメモです。
(nvmリポジトリ)[https://github.com/nvm-sh/nvm]
Git経由でインストール
インストール方法は他にもあるけどnvmそのものの更新に対応するためには、Git経由でGitHub上のレポジトリクローンがよいみたいです。
更新された場合はプルするだけです。1. nvm をインストール
github.com から nvm を clone する
$ git clone https://github.com/nvm-sh/nvm.git .nvmclone したら最新バージョンに checkout してください。
2. nvm を使えるようにする
nvm.sh を実行して nvm を使えるようにする
$ source ~/.nvm/nvm.shこれで以下が動けば成功です。
$ nvm --version3. ~/.bashrcに追加
起動時に使えるように設定追加
export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion以下で再読み込み
source .bashrc
3. Node.jsをインストール
利用可能なバージョン確認
$ nvm ls-remoteバージョン指定してインストール
$ nvm install <version>以下が動けば成功
$ node -v $ npm -v4. その他よく使うコマンド
インストールしたバージョン一覧
$ nvm ls使用するバージョンの指定
$ nvm use <version>nvmの機能一覧
$ nvm --help▼参考
https://ikkyu.hateblo.jp/entry/2019/05/03/003636
https://phiary.me/nvm-node-js-install/
- 投稿日:2020-01-22T01:23:18+09:00
gitで複数のリモートリポジトリを設定する方法
手順(CUI)
やり方は簡単です!
コマンドライン上では以下のコマンドによって2つ目のリモートリポジトリを追加することができます。$ cd {PROJECT_DIRECTORY} $ git remote add {REMOTE_NAME} {REMOTE_URL}初めてリモートをaddするときと何ら変わりません。
例えば、githubのリモートリポジトリを新たに追加したければ以下のような感じになります。$ git remote add github https://github.com/{USER_NAME}/{PROJECT_NAME}手順(GUI)
SourcetreeのようなGUI(Sourcetreeしか知りませんが笑*1)で行う場合は以下のようになります。
例としてSourcetreeで行っていますメニューバーからリポジトリ -> リポジトリの設定を選択
メニュータブのリモートを選択 -> 追加
リモートの名前(originなど、好きな名前で大丈夫です)とURLを入力 -> OK
こうすることでリモートリポジトリを追加できます。
ということで
今回はリモートリポジトリの複数追加
についてお話しさせていただきました。
ここまでご覧いただきありがとうございます!
自分自身まだまだ未熟なので訂正、指摘等ございましたらコメントにてよろしくお願いします?♂️
もちろんその他ご意見ご要望ご質問等もお待ちしております!
それではまた次回の記事でお会いしましょう?注釈
- 投稿日:2020-01-22T00:37:03+09:00
リモートリポジトリへプッシュする時に詰まった話
はじめに
今回はLaravelの新規プロジェクトをGitで管理するのを目的としています。
リモートリポジトリにプッシュする際に詰まった時の話をまとめます。環境
ProductName: Mac OS X ProductVersion: 10.14.6 BuildVersion: 18G2022 ホスティングサービス: GitHub 通信プロトコル: SSH通信
目次
ローカルリポジトリ
を作成ステージエリアにファイル
をadd
するコミット
するリモートリポジトリ
を登録するGit
の設定をする秘密鍵
と公開鍵
を作成し、GitHub
へ登録する。プッシュ
する
1.ローカルリポジトリを作成
Laravelのルートディレクトリに移動し、次のように実行します。
#イニシャライズ(ここをローカルリポジトリとします) $git init #実行結果 Initialized empty Git repository in ルートディレクトリのパス/.git/ #状態を確認 $git status #実行結果(箇条書きで書かれているものがルートディレクトリにあるファイルとフォルダです。) On branch master No commits yet Untracked files: (use "git add <file>..." to include in what will be committed) .editorconfig .env.example .gitattributes 〜 (略) 〜 storage/ tests/ webpack.mix.jsログの説明
・
On branch master
作業ブランチがmasterであると書かれています。
・No commits yet
コミットがまだないと書かれています。
・Untracked files:
(use "git add <file>..." to include in what will be committed)
未追跡ファイルが先ほどの箇条書きで書かれていたものがステージエリアに追加されていないと書かれています。git add <file>
使って変更部分(新規追加)をadd
しましょう2.ステージエリアにファイルをaddする
1.
git add <file>
を実行します。#-Aオプションをつけることによって変更があった全てのファイルがaddされます。 $git add -A #状態を確認 $git status On branch master No commits yet Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: .editorconfig new file: .env.example new file: .gitattributes new file: .gitignore 〜 (略) 〜 new file: tests/TestCase.php new file: tests/Unit/ExampleTest.php new file: webpack.mix.js・
(use "git rm --cached <file>..." to unstage)
ステージエリアから外したい場合はgit rm --cached <file>
を使用してくださいと書かれています。3.コミットする
git commit
を-m
オプションを使用して実行します。#addされたものをコミットします。-mオプションをつけ、「"」で囲むことでコメントを残せます。 $git commit -m "create new project" #実行結果 [master (root-commit) 71a1d0a] create new project 87 files changed, 8435 insertions(+) create mode 100644 .editorconfig create mode 100644 .env.example create mode 100644 .gitattributes 〜 (略) 〜 create mode 100644 tests/Feature/ExampleTest.php create mode 100644 tests/TestCase.php create mode 100644 tests/Unit/ExampleTest.php create mode 100644 webpack.mix.js4.リモートリポジトリを登録する
git remote add
を実行し、リモートリポジトリを登録する。#originの後の文字列は使用するリモートリポジトリにある「Clone or download」で入手。 $git remote add origin git@github.com:GitHubのユーザー名/リモートリポジトリ名.git5.Gitの設定をする。
git config
を使用し、Gitの設定を行う。$git config -global user.name "GitHubのユーザー名" $git config -global user.email "メールアドレス"6.秘密鍵と公開鍵を作成し、GitHubへ登録する。
6-1
ssh-keygen
で秘密鍵
と公開鍵
を作成する。# -t で鍵の暗号化形式を指定。 -b でbit数を指定。2048以上がいいみたいです。 # -C でコメントを指定できる。 $ssh-keygen -t rsa -b 4096 -C "メールアドレス" #実行結果 Generating public/private rsa key pair. Enter file in which to save the key (/Users/ユーザー名/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/[ユーザー名]/.ssh/id_rsa. Your public key has been saved in /Users/[ユーザー名]/.ssh/id_rsa.pub. The key fingerprint is: SHA256:==========[作成されたキー]========== [メールアドレス] The key's randomart image is: +---[RSA 4096]----+ | ~~======| | ================| | ========| | =======| | =======| | ================| | ========| | =======| | =======| +----[SHA256]-----+・
Enter file in which to save the key (/Users/ユーザー名/.ssh/id_rsa):
この()内のディレクトリにキーを作成するという確認。(Enterを入力)
・Enter passphrase (empty for no passphrase):
パスワードを入力。
・Enter same passphrase again:
もう一度同じパスワードを入力。6-2 作成した
公開鍵
をGitHubに登録する。
id_rsa
とid_rsa.pub
がそれぞれ秘密鍵
と公開鍵
である。
両者が作成されたディレクトリに移動する。$cd ~/.ssh $ls authorized_keys id_rsa known_hosts config id_rsa.pub見つけた。ここで
公開鍵
の中身をコピーする$pbcopy < id_rsa.pub・GitHubの
Settings
でSSH and GPG keys
タブに移動、
・New SSH key
をクリックする。Title
を任意でつけ、Key
にコピーしたものを貼り付ける。
・Add SSH key
をクリック。これで公開鍵
は登録完了です。7.プッシュする
7-1
git push origin master
を実行する。ここでやっと本題に入ります。
#originはリモートリポジトリ、 masterはoriginのどこのブランチへプッシュするかを指定。 $git push origin master #実行結果何も反応しない。
6-2
のls
コマンドで出てきた一覧に
known_hosts
,authorized_keys
,config
ファイルがあったと思います。
ここでは書いていませんでしたが、色々調べながらこれらのファイルも調べながら色々触っていました。
ここでそれぞれのファイルの役割について簡単に書いていきます。・known_hosts
一度接続したことがあるサーバーを記録しているファイル
・authorized_keys
接続を許可する公開鍵を登録しておくサーバー側のファイル
・config
SSH接続の情報を書くファイル調べると、configファイルの指定方法は下記のようになっているようです。
他にも設定できる項目はあります。Host GitHub //Host名 HostName github.com //接続先のIPアドレス IdentityFile ~/.ssh/id_rsa //秘密鍵のファイルパス User git //SSH接続するユーザー名
IdentityFile
のファイルパスが間違っていた為、うまく接続できませんでした。config
ファイルを削除し、ローカルリポジトリへ戻り、git push origin master
を実行しました。$git push origin master #実行結果 Enter passphrase for key '/Users/[ユーザー名]/.ssh/id_rsa': Enumerating objects: 117, done. Counting objects: 100% (117/117), done. Delta compression using up to 4 threads Compressing objects: 100% (97/97), done. Writing objects: 100% (115/115), 59.17 KiB | 1.23 MiB/s, done. Total 115 (delta 12), reused 0 (delta 0) remote: Resolving deltas: 100% (12/12), done. To github.com:[GitHubユーザー名]/[ローカルディレクトリ名].git 54d630d..fa6f554 master -> master成功しました。
config
ファイルを削除したのに、プッシュが成功したのはconfigファイルが明示的に追加で設定するファイルだからだと思います。GitHubを確認するとプッシュできていました。
fa6f554
が実行結果の方にも書かれているのが確認できました。さいごに
commit
が3日前になっていることもわかりますが、問題の解決・記事の作成に3日かかってしまいましたが、SSH通信での秘密鍵
・公開鍵
の仕組みを学ぶ良い機会になりました。まだまだ学ぶことが多いですが、今回はこれで。