どこでも見れるメモ帳

とあるSEの備忘録。何かあれば気軽にコメントください〜

git

SSHトンネル経由でVPN/社内ネットワーク内のGitリポジトリにpush/pull/cloneする

はじめに コロナで在宅ワークするにあたり、上図の在宅開発端末*1からダイレクトにVPN/社内ネットワーウ内の社内サーバにあるGitリポジトリにpush/pullしたいニーズが発生したのでメモです*2。 課題感 git push/pullするたびに毎回、上図の「在宅作業端末」…

Jupyter Notebook(ipynb)の実質コードのみをgitリポジトリ管理するには

はじめに Jupyter Notebook(ipynb)をなるべくマシなバージョン管理方法がないか調べてみました。 実現したいことを簡単にならべると次の通り。 jupyter notebook(ipynb)をgitでバージョン管理したい。 実行の都度変わる実行結果はコミットしたくない。 実質…

Gitリポジトリを移行するには?

git

はじめに Gitホスティングサービスを、GitLabからBitBucketへ移行する必要があったのでメモです。 移行対象は、単純にリポジトリのみとします。*1 やりかた 1.移行先の空リポジトリを作成します。*2 2.移行元のリポジトリをベアリポジトリとしてクローンしま…

マージコミットを含む大きめのgitブランチをcherry-pickで別ブランチに持っていくには

git

はじめに マージコミットを含む大きめのgitブランチを,別のブランチに持って行きたい状況が発生したのでメモ*1. 取り込みたいブランチを1コミットにまとめ,これを取り込み先ブランチにcherry-pickマージする方法を記す*2. なお,複数コミットを1コミット…

SRP(単一責任原則)とCC(循環的複雑度)によるコンポーネント内の技術的負債の定量化

はじめに ソースコードを静的解析することでRailsのコンポーネント(単一ファイル)の技術的負債を定量化します. 方針はこちらの記事*1に従って行います. なお,SRPの算出はgit blameを用いて*2行い,CCの算出はrubocopのMetrics/CyclomaticComplexityを用…

git blameによるSRP(単一責任原則)の定量化

はじめに ソースコードを静的解析することでSRP(単一責任原則)を定量的に算出します.*1 svn blameによるSRP算出*2を参考に、git blameによる算出をshで行ってみました. このSRP値が最大のモジュールが王様モジュールに相当します. # 単一責務性の違反指…

gitで変更ファイルの差分行番号を取得するには?

はじめに gitで変更ファイルの差分行内容とその行番号を取得したい状況が生じたためメモ(下画像は実行結果) やりかた git --no-pager diff --no-ext-diff -U1000000 \ | diff-lines.sh \ | grep -E "^[^\"].*\:[0-9]+\:[\+|\-]" 1行目について,git diffを…

SVN/GITリビジョン区間の更新ファイルをパッチ化する

はじめに SVNもしくはGITにおけるリビジョン区間*1の更新ファイルをパッチ化*2する作業が生じたためシェル化メモ。 やりかた(SVNの場合) # リビジョン区間(r6000-r6100)における更新ファイルについて、 # ディレクトリ構造を維持したままtar.gzに固める sv…