タグ

gitに関するshunmatsuのブックマーク (133)

  • 「Squash merge」の注意点と使い方:開発プロセスを改善するためのヒント

    今日は、squash merge についてご紹介します。先日、GitHubでソースを管理していたところ、squash mergeを使用しているときに起きた問題があったので、その共有になります。 Squash mergeとは Squash mergeは、Gitにおいて複数のコミットを一つにまとめる方法の一つです。通常のマージでは、複数のブランチを一つに統合することができますが、それぞれのコミット履歴がそのまま残ります。一方で、Squash mergeでは、統合する複数のコミットを一つにまとめ、新たなコミットとして履歴に残すことができます。 Squash mergeを行うことで、Gitの履歴を整理し、コミットログを簡潔に保つことができます。また、複数の小さなコミットを一つにまとめることで、コードレビューの際にもより分かりやすくなるというメリットがあります。 Squash mergeを行うには、

    「Squash merge」の注意点と使い方:開発プロセスを改善するためのヒント
  • モノレポにすべきか、レポジトリを分割すべきか

    先日 フロントエンドの Monorepo をやめてリポジトリ分割したワケ というブログがバズっていた。そのおかげか、Twitter でもモノレポに関する言及がちょこちょこあった。一家言あるドメインなので書きたい。ただの一家言(a.k.a お気持ち)なのでぜひ皆さんの意見も聞いてみたい。 tl;dr 別に自分はどっち派とかではなく、どっちも選ぶ。強いて言うならリポジトリ分割派で、依存更新がしんどくなったら monorepo 派。 免責 モノレポに対する一家言を書きたいだけであって、内容自体はフロントエンドの Monorepo をやめてリポジトリ分割したワケ と全く関係なく、そのブログで述べられている施策については何も言及しません。ただ一つ言及するとしたら肉の部位がコードネームに採用されているのは良いと思いました。🍖🍖🍖 モノレポにしたくなる状態の前提にあるもの 前提は元記事と同じように

    モノレポにすべきか、レポジトリを分割すべきか
  • 設計ドキュメント腐る問題、Git管理で運用してみた結果 | フューチャー技術ブログ

    はじめにTIG真野です。 秋のブログ週間2023 の3目は、設計ドキュメントをGit管理して腐らせないようにがんばってみた話をします。 前段として6年前、「我々はいかにシステム開発におけるドキュメント腐る問題と戦えば良いのか」という記事を書いたのですが、その後の試行錯誤はどこにも残していないことに気づきました。普段のフューチャー技術ブログですとちょっと引け目を感じるテーマですが、秋の夜長を楽しむため読み物成分を多めに書くというテーマのこのブログリレーにピッタリな気がするため、この機会をお借りします。 ドキュメントも色々な種別があるかと思いますが、この記事では設計ドキュメントを指すことにします。設計ドキュメントは開発メンバーが参照するもので、ステークホルダーへの説明資料に引用して使うことはあれど、主目的は異なるという前提です。Design Docの場合もありますし、システム構成図、ERD、

    設計ドキュメント腐る問題、Git管理で運用してみた結果 | フューチャー技術ブログ
  • Git で複数のコミットを1つにまとめられる「スカッシュ」というテクニック | DevelopersIO

    こんにちは、CX 事業部 Delivery 部の若槻です。 今回は、Git で複数のコミットをまとめる方法を確認してみました。 ちなみに Git で行うこの操作のことを「スカッシュ(squash)」するとも言います。squash は「押しつぶす」とか「ぺちゃんこにする」という意味だそうです。 環境 $ vim --version VIM - Vi IMproved 9.0 (2022 Jun 28, compiled Jun 23 2023 22:12:29) macOS version - arm64 Included patches: 1-1544 確認してみた スカッシュしたいコミットが「連続する」場合と「連続していない」場合の 2 通りの方法を確認してみました。 連続するコミットの場合 まずは「連続する」複数のコミットをスカッシュする場合の方法です。 スカッシュ前の状態 次のよう

    Git で複数のコミットを1つにまとめられる「スカッシュ」というテクニック | DevelopersIO
  • 実務でよく使うgitコマンドライン - Qiita

    バージョン管理の個人的な考え方 基的に歴史は改変したくないタイプ。タイポの修正もわざわざrebaseしないで普通にcommitします。 初回のpushまでは色々試行錯誤もあるので、ローカルのコミットはしばらく放置していますが、目処が立ったらステージングしコミットを付けていきます。 Gitでやらかした時に使える19個の奥義がよく検索ヒットしますが、個人的にはあまり実務で使ってないんです。 そこで、ビギナー〜中級の人向けに役に立つコマンドを以下にまとめます。 という書き出しで当初はまとめていましたが、実は考えが変わってきました。 rebaseからのforced pushはやっても良い派になりました。ただし、forkからのPull Requestもしくはレビュー前のコミットの場合に限ります。自分のリポジトリのブランチなんだからキレイにした後にマージしてもらう方が親切だったり、レビューワーを意識

    実務でよく使うgitコマンドライン - Qiita
  • 【Git】後から必要なくなった実装を取り消す方法~revertとreset~ - NRIネットコムBlog

    記事は 【いまさら聞けない○○ウィーク~Git編~】 1日目の記事です。 🍦 告知記事 ▶▶ 記事 ▶▶ 2日目 💻 はじめに 前提 Gitのステージングとコミット HEAD どんなときに実装を取り消したいか 実装を取り消す方法 revertコマンド resetコマンド 結局どの方法がいいのか 逆に、もう一方のコマンドが活躍する場面はどこか コミットの取り消し機能を有効に活用するために 終わりに はじめに みなさん初めまして。2022年11月にNRIネットコム株式会社に中途入社した上村です。入社してから、Javaを用いたWebアプリケーションの開発に携わっています。開発業務では、ソースコードをGitでバージョン管理しています。Gitは使いこなせると非常に便利ですが、初見では分かりにくい機能も多くあります。今回は、後から必要なくなった実装を取り消す方法についてフォーカスを当てた記事を

    【Git】後から必要なくなった実装を取り消す方法~revertとreset~ - NRIネットコムBlog
  • 君には1時間でGitについて知ってもらう(with VSCode) - Qiita

    おことわり この記事はプログラミング&業務未経験の新入社員に、Gitについて1時間くらいでバババッと説明した内容をもとに作ったものです。自分がもし誰かにGitについて教えて貰える立場にいたら、最初にこれを教えて貰いたかったという気持ちで作りました。 とりあえず「1人のプロジェクト」で「1時間で」Gitをそこそこ知って使えるようになることを目的としています。実際のチーム開発ができる水準までこの記事だけで達するのは無理ですが、今後Gitを使う必要がある人にとって学習の足がかりになればいいな、という内容です。 それと、新入社員に教えるという都合上、表現がやや正確でなくざっくりしたところがあるかもしれませんが、質の悪い誤解を招くようなものでなければご容赦下さい。 全体像 まずはGitとは何かをざっくり分かって貰った後で、VSCode上での操作を行って貰います。 Windowsでの説明を行いますが、

    君には1時間でGitについて知ってもらう(with VSCode) - Qiita
  • Gitのコミットメッセージの書き方(2023年ver.)

    記事のモチベーション 約8年前、Gitを使い始めたときに以下の記事を公開したところ、想像以上の反応をいただきました。 当時はSubversionからGitに移行し、試行錯誤をしている中だったこともあり、多くの反応をいただけたことはモチベーションのひとつでした。 ただ、時が経ち、当然かもしれませんが現在は当時と違う書き方をしており、思想として変わっていない部分はあるものの、今でもときどきLikeをいただく中で、アップデートを全くしないのは誠実じゃないなと感じていました。 というわけで、現在のフォーマットも数年後には変わっている可能性が高いですが、その時々のスナップショットを公開することにも何らか意味があるかなと思い、「今の僕はこうコミットメッセージを書いているよ」というのをまとめました。 Gitを使う環境 開発フローやホスティングサービスごとのUIのdiffによって、最適なフォーマットは変

    Gitのコミットメッセージの書き方(2023年ver.)
  • Git研修【MIXI 23新卒技術研修】

    23新卒技術研修で実施したGit研修の講義資料です。 動画:https://youtu.be/lWkO8bQ9pSo 資料の利用について 公開している資料は勉強会や企業の研修などで自由にご利用頂いて大丈夫ですが、以下の形での利用だけご遠慮ください。 ・受講者から参加費や授業料などを集める形での利用(会場費や飲費など勉強会運営に必要な実費を集めるのは問題ありません) ・出典を削除または改変しての利用

    Git研修【MIXI 23新卒技術研修】
  • リモートリポジトリを複数設定にする方法 - Qiita

    今回は1つのローカルリポジトリに対して、2つのリモートリポジトリを登録する方法についてご紹介したいと思います。 設定方法がとても簡単だったので、自分用として記録します。 現在のリポジトリを確認 git remote -v origin git@bitbucket.org:hogehoge/hoge.git (fetch) origin git@bitbucket.org:hogehoge/hoge.git (push) 上記を実行することで、現在設定されているリモートリポジトリを確認することが出来ます。 ここでリポジトリが2つ以上出てきたら、複数設定されているということになります。 現在は bitbucketしか表示されていませんね。 リモートリポジトリの追加 では、新たに登録したいリモートリポジトリを作成したら、

    リモートリポジトリを複数設定にする方法 - Qiita
  • 肥大化したGitリポジトリを別のGitサーバへ移管する|中央コンピューターサービス株式会社(CCS)

    生涯学習事業部、小川です。 部内で個別管理していたGitサーバから、社内共有のGitサーバへ移行した際の手順について記載します。 試行錯誤で建てながら運用していたGit環境だったため、Git内の歴史も整理されておらず肥大化したGitリポジトリがありました。 社内共通管理できる場所ができたということで、移行の準備に取り掛かったのでした。 一番簡単そう、という理由により移行方法1で実験したところ、特に問題なしという結果が出ましたのでいざ実践。 gitコマンドのリモートリポジトリの履歴などをすべてクローンするmirrorオプションを使用し、クローンしたリポジトリを同じくmirrorオプションpushをかける。 $ git clone --mirror <移行元URL> $ cd <ミラーでできた.gitフォルダ> $ git push --mirror <移行先URL> 当然、Git歴史が古い

  • Gitリポジトリの中身を、ブランチとタグも含めて別リポジトリにコピーする - Qiita

    Bitbucket にあるソースを丸ごと GitHub Enterprise に移行することになりました。「丸ごと」というのは、 main 以外の全ての branches と tags も含めての移行です。 しかし、普通に git clone -> git remote set-url -> git push するだけでは main しか移行できません。 少しコマンドが複雑だったので、手順をメモしておきます。 やりたいこと Bitbucket にある Git リポジトリの中身を、 branches と tags も含めて GitHub Enterprise に移行する コマンド まずは移行元リポジトリの最新のソースを clone します。

    Gitリポジトリの中身を、ブランチとタグも含めて別リポジトリにコピーする - Qiita
  • SourceTreeでローカルリポジトリにないブランチを取得する方法 #わかばちゃんと学ぶ Git使い方入門|湊川あい #わかばちゃんと学ぶ 本 発売中

    IT漫画家の湊川あい(みなとがわ・あい)です。 拙著『わかばちゃんと学ぶ Git使い方入門』に関して、出版社さんを通じて読者さんから質問があったので記事でお答えします。 読者さんからのご質問P.131 プルするときにブランチを指定しますが、ローカルにないブランチをプルする場合はどのように作業すれば良いのでしょうか。 「プルするリモートブランチ」では新しいブランチを選択できますが「次のブランチにプル」は固定で、ローカルでアクティブになっているブランチが勝手に指定されています。(そもそも新しいブランチ云々を意識せずに、最新の状態になってくれると有難いのですが) リモートリポジトリに存在するブランチは「フェッチ」でまとめて取得できるリモートリポジトリ上のブランチを、ローカルリポジトリにも持ってきたいというご質問ですね。 ズバリ「フェッチ」でまとめて取得できます。 SourceTreeでの手順

    SourceTreeでローカルリポジトリにないブランチを取得する方法 #わかばちゃんと学ぶ Git使い方入門|湊川あい #わかばちゃんと学ぶ 本 発売中
  • Visual Studio Codeのうれしい機能を使いこなして、初心者を最速で脱出する!《VSCode実践入門》|ハイクラス転職・求人情報サイト AMBI(アンビ)

    ハイクラス求人TOPIT記事一覧Visual Studio Codeのうれしい機能を使いこなして、初心者を最速で脱出する!《VSCode実践入門》 Visual Studio Codeのうれしい機能を使いこなして、初心者を最速で脱出する!《VSCode実践入門》 VSCodeは初版が2015年リリースの新しいエディタですが、インテリセンス、ユーザースニペット、Emmet、マルチカーソル、拡張機能というコーディングにうれしい機能が充実しています。VSCodeを検討中あるいは使いはじめたばかりの若手エンジニアが、いち早く初心者を脱出するための使いこなし方を解説します。 はじめまして、KC(けーしぃ、@kcpoipoi)と申します。技術書典6にサークル参加してたら「キミ、Web執筆に興味ない??」とお声がけいただきました。Web執筆は初めてなので至らない点があるかもしれませんが、何卒よろしくお願

    Visual Studio Codeのうれしい機能を使いこなして、初心者を最速で脱出する!《VSCode実践入門》|ハイクラス転職・求人情報サイト AMBI(アンビ)
  • GitHubでフォーク元の変化を取り込む

    GitHubで共同開発をしていると、フォークしてから作業をするという形で作業することが多くなるかと思います。 その際、フォーク元のリポジトリに差分が生じてしまうとgit pullでは差分を取り込むことができません。 そこで今回はフォーク元の差分を自身のリポジトリに反映させる方法を書きます。 手順 まずは正しくupstream先が登録されているか確認します。 $ git remote -v origin git@github:private/hoge.git (fetch) origin git@github:private/hoge.git (push) upstream git@github:work/hoge.git (fetch) upstream git@github:work/hoge.git (push)

    GitHubでフォーク元の変化を取り込む
  • 【GitHub】Organizationのレポジトリがクローン出来ない不具合を直す - rarafyの技術ブログ

    問題 SourceTreeで、Organization管理下のレポジトリをクローンするとき、正しいURLを入れているのに、「ソースパス/ソース URL として正しくありません」と表示されることがある(図1)。 ネットでググると「ssh認証が必須」だとか、「IDとPWをURL中に入れてみる」とか書かれている記事がある。しかし、これらを試しても直らなかった。どうやら、Organizationレポジトリをクローンするときだけエラーが発生するようなのだ。 解決方法を見つけたので後で見返す用にメモしておく。 解決 まずは、GitHubの個人設定を開く。

    【GitHub】Organizationのレポジトリがクローン出来ない不具合を直す - rarafyの技術ブログ
  • [git] fatal: unsafe repository | Tech控え帳

    1. unsafe repository エラーの通知例 1.1. 外部ストレージに置かれたローカルリポジトリにアクセス > cd E:\USO_800 > git status fatal: unsafe repository ('E:/USO_800' is owned by someone else) To add an exception for this directory, call: git config --global --add safe.directory E:/USO_800

  • SourceTreeのダウンロードとインストール方法 - プロエンジニア

    Windows OSで「Git」を使いたい方向けに「Git」のGUIツール「SourceTree」のダウンロードとインストール方法、それから「GitHub」のローカルリポジトリのクローンについても合わせて解説します。「SourceTree」を使うには「Git」や「Mercurial」のインストールが必要ですが、「SourceTree」に内蔵の「Git」を利用する事もできます。コラムでは「Git」のインストールは完了している前提で説明します。 「Git」をインストールして基操作を確認したい方は、以下の関連記事を参考にインストールしてみて下さい。 1. 「SourceTree」とは? 「SourceTree」とは、Atlassian社が提供するバージョン管理システム「Git」のGUIクライアントです。コラムではWindows OS版について解説しますが、「Mac」でも利用することができま

    SourceTreeのダウンロードとインストール方法 - プロエンジニア
  • GitとCI/CDに関する知識ゼロのSEが、GitLabで取り消し (リバート) をGUIから試す話 (2023/07/04 更新) - ネットワールド らぼ

    2023/07/04 画面ショットをGitLab Enterprise Edition 16.2.0-pre のGUIに差し替えました。 皆様こんにちは。SEの小池と申します。 GitLabでは、ブランチに含まれるソースコードの変更をマージ前にチェックする方法 及び それを提供する機能をマージリクエスト (略してMR) と呼んでいます。GitHubだとプルリクエストと呼ばれているアレです。 このマージリクエストを活用することで、コードレビューを効率化し、品質を向上させることが可能になります。 しかし時には、マージリクエストでマージ先を間違えてしまったり、バグが含まれるコミットをそのままマージしてしまったり...ということがあるかと存じます。 今日はそんな間違えてマージしたマージリクエストやコミットをGUIから取り消し (リバート) する方法を試してまいります。 記事の対象の方 今回のブロ

    GitとCI/CDに関する知識ゼロのSEが、GitLabで取り消し (リバート) をGUIから試す話 (2023/07/04 更新) - ネットワールド らぼ
  • ワークフローを改善できるGitのヒント15選 #GitLab #Git - クリエーションライン株式会社

    投稿者:Suri Patel 2020年で、Gitが誕生してから15周年を迎えました。Git Merge 2020での体験や、Gitフローの問題、最新のGit機能であるPartial Clone など、Gitの誕生と影響について今まで様々な投稿をしてきました。 Gitを使い始めたばかりの人であっても、コマンドラインを使いこなすレベルの人であっても、自分自身のスキルを自己研磨する姿勢は素晴らしいものです。そこで今日は、Gitを使用してワークフローを改善できる15の方法を紹介します。 1. Gitのエイリアス 日々のワークフローを改善できる最もインパクトのある方法の1つは、一般的なコマンドのエイリアスを作成し、ターミナルでの作業時間を短縮することが挙げられます。 次のコマンドを使うと、最もよく使われる Git コマンドである checkout 、 commit 、 branch のエイリアスを

    ワークフローを改善できるGitのヒント15選 #GitLab #Git - クリエーションライン株式会社