読者です 読者をやめる 読者になる 読者になる

どこでも見れるメモ帳

ちょっとした備忘録を無秩序に投稿します.気軽にコメントください^^

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…