タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

gitに関するackintoshのブックマーク (51)

  • [git reset (--hard/--soft)]ワーキングツリー、インデックス、HEADを使いこなす方法 - Qiita

    [git reset (--hard/--soft)]ワーキングツリー、インデックス、HEADを使いこなす方法Git新人プログラマ応援 1. gitの基礎(言葉の意味) ワーキングツリー[working tree]:最新のファイルの状態 インデックス[index](ステージ[stage]):コミットするためのファイルの状態 ローカルリポジトリ[local repository]:ファイルの変更履歴を記録(手元で管理) ヘッド[HEAD]:最新のコミットの状態 リモートリポジトリ[remote repository]:ファイルの変更履歴を記録(みんなで共有) add:「ワーキングツリー → インデックス」への反映 commit:「インデックス → ローカルリポジトリ」への反映 push:「ローカルリポジトリ → リモートリポジトリ」への反映 2. git resetを使いこなす git re

    [git reset (--hard/--soft)]ワーキングツリー、インデックス、HEADを使いこなす方法 - Qiita
  • His greatness lies in his sense of responsibilities

    リアル飲み会とオンライン飲み会を組み合わせた「ハイブリッド飲み会」を開催してみたので、どのようにして実施したかをメモとして残しておきます。 会

    His greatness lies in his sense of responsibilities
  • git で remote master ブランチへのプッシュを禁止する - Qiita

    設定にあたって、意外とあちこちから情報を集めたので、まとめます。 新たに clone されたリポジトリから master へプッシュできないようにする フォルダをつくります mkdir ~/.git_template/hooks hook シェルを編集します vi ~/.git_template/hooks/pre-push #!/bin/bash while read local_ref local_sha1 remote_ref remote_sha1 do if [[ "${remote_ref##refs/heads/}" = "master" ]]; then echo "Do not push to master branch!!!" exit 1 fi done 実行権限を付与します chmod +x ~/.git_template/hooks/pre-push git cl

    git で remote master ブランチへのプッシュを禁止する - Qiita
  • Git - Book

    The entire Pro Git book, written by Scott Chacon and Ben Straub and published by Apress, is available here. All content is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Print versions of the book are available on Amazon.com. The version found here has been updated with corrections and additions from hundreds of contributors. If you see an error or have a s

  • 【今日からできる】コミットメッセージに 「プレフィックス」 をつけるだけで、開発効率が上がった話 - Qiita

    はじめに 今まで commit message を「なんとなく」書いていたが、プレフィックスをつけることで、コミットメッセージに対する考え方が変わった。 そのおかげで開発効率が上がったので、その内容をシェア。 プレフィックスをつけるってどういうこと? 以下のようにコミットメッセージの先頭に、なんらかの文字をつけること。 feat: xxx という機能を追加 fix: yyy で発生するバグを修正 refactor: zzz の機能をリファクタ のように feat, fix, refactor などがプレフィックスです。 最近 OSS の Contribution Guide などでよく見かけます。 導入したプレフィックスルール Angular.js/DEVELOPERS.md Angular.js の開発者ガイドに書いてあるメッセージを参考にしました。 以前のコミットメッセージ(例 ちなみ

    【今日からできる】コミットメッセージに 「プレフィックス」 をつけるだけで、開発効率が上がった話 - Qiita
  • なぜ git rebase をやめるべきか - Frasco

    Git での開発を数年間経験した後、徐々に日々の仕事の一部として、より高度な Git コマンドを使うようになりました。私は Git rebase を見つけてすぐにそれを毎日の仕事に使いました。リベースに精通している人は、どれだけ強力で魅力的なツールであるのか知っているでしょう。しかし、リベースには、初めてリベースを触ったときにはわからなかったのですが、いくつかの課題があることに気が付きました。これを説明する前に、マージとリベースの違いをおさらいしておきましょう。 最初に、feature ブランチを master にマージする例を考えてみましょう。マージすることにより、新しいマージコミット g を作成します。下のコミットグラフではマージした際に何が起こるのかを説明しています。また、開発が盛んなリポジトリでよく見かける「線路」のようなグラフになっているのが見て取れるでしょう。 マージの例 ある

    なぜ git rebase をやめるべきか - Frasco
  • インデントコミットで真犯人がわからなくなった場合の git blame

    config_param :queued_chunk_flush_interval, :time, :default => 1 を追加したコミットがどれかを探したいとします。 しかし、git blame を見るとこんなかんじに、インデントコミットによってほぼ全ての履歴が上塗りされていてどれだかわからない、みたいな状況にどうやって真犯人を探そうかという話です。 1. git blame -w を使う インデントコミットを無視したいだけであれば git blame の -w オプションが使える。-w は比較の際に whitespace を無視してくれるオプション。git diff にもあるよね。 $ git blame -w lib/fluent/output.rb ... (省略) 14d01c71 (Masahiro Nakagawa 2013-03-27 03:56:51 +0900 1

    インデントコミットで真犯人がわからなくなった場合の git blame
  • gitのdiff, status, logを極限までコンパクト化+便利化する - Qiita

    git diffを見やすくする git diff --color-words で差分を小さく表示する 通常のgit diffは行単位なので、例えば変数名を一括変更した場合見づらいです。 --color-wordsを指定すると記号やスペースで区切られた単語単位でのdiffを表示できます。gitの設定は不要です。 より細かな表示のカスタマイズも可能です。man git-diffで--word-diffを検索してみてください。 ※ただし、変更が複雑な場合は、通常のgit diffのほうが見やすいこともあります。 .gitattributesを設置してもっと小さく表示する .gitattributesファイルを設置することで、言語文法に基づいて変数名、関数名といった単位でdiffを表示できます ファイル設置後にgit diff --color-wordsとすると、下記のようにさらに小さく表示できま

    gitのdiff, status, logを極限までコンパクト化+便利化する - Qiita
  • クリアなコードの作り方: 意図が伝わるコミットのしかた - 2012-03-13 - ククログ

    コミットメッセージの書き方ではコミットをわかりやすくするためには以下の2つの条件を満たす必要があると書きました。 コミットの内容が分かりやすく説明されていること コミットの内容が小さくまとまっていること このうち「コミットの内容が分かりやすく説明されていること」についてはすでに説明済みです。今回は「コミットの内容が小さくまとまっていること」について説明します。 めざすところ 単純にコミットの内容を小さくするだけではわかりやすくなりません。それでは、どのような基準で小さくすればよいのでしょうか。 よく言われることは1つのコミットには1つの小さな論理的にまとまった変更だけにする、というものです。たしかにこれは重要です。しかし、これだけを基準とすると、人によっては大きめなコミットになってしまいます。人それぞれで論理的なまとまりの大きさが異なるからです。 1つのコミットでどうすればよいかを考えるの

    クリアなコードの作り方: 意図が伝わるコミットのしかた - 2012-03-13 - ククログ
  • Gitのベストプラクティクスっぽいもの - Sexually Knowing

    tbaggery - A Note About Git Commit Messages A successful Git branching model » nvie.com Commit Often, Perfect Later, Publish Once—Git Best Practices だいたいこれらに書いてあることを考えている。 基的にGit Successful Branch Modelで運用する。git-flowを入れて使っているけど、手でやってもそんなに面倒ではないし好きなようにしたらよさそう。 Subversionを個人で使っていたころはブランチはよくわからないけど恐しいものだったけど、Gitを使いはじめてだいぶ親しめるようになった。 文字通り、ブランチ、枝である。気軽に扱えるということは理解の助けにもなる。 コミットの単位 論理的に最小限度のコミットをつくる。「こう

    Gitのベストプラクティクスっぽいもの - Sexually Knowing
  • Git2.9のキレイなdiffを出すためのconfig - Qiita

    Git 2.9 has been released https://github.com/blog/2188-git-2-9-has-been-released 昨日キレイなDIFFが出せるgit2.9がリリースされました。 homebrewで brew upgrade git な感じでアップグレードすれば2.9は入るのですが、 このキレイなDIFFは標準では有効になってないので、記事にあるとおりに設定を行いましょう。 だいたい以下のような感じのコマンドうてばいいと思います。 下準備:diff-highlightにPATHを通す まぁ通さずに直接読んでもいいんですが、通しておきましょう。 homebrewでいれるとdiff-highlightさんは↓あたりにいるのでPATHを通しておきましょう。 export PATH=$PATH:/usr/local/Cellar/git/2.9.0/s

    Git2.9のキレイなdiffを出すためのconfig - Qiita
  • git fetchの理解からgit mergeとpullの役割 - Qiita

    gitを使い始めるとcommit, push, pullなどはある程度理解出来るようになりますが、fetchってなんだ?ってなりますよね。 あまり馴染みにくいのは、pullがfetchとmergeの両方を組み合わせたコマンドだからなんですね。 fetchとは gitの場合、リポジトリはリモートとローカルの2ヶ所あります。fetchとはリモートリポジトリから最新情報をローカルリポジトリに持ってくるコマンドです。 fetchをしても、pullのようにファイルが更新されるわけではありません。 あくまでもローカルリポジトリが更新されるだけです。 もっと詳しくいうと、例えばmasterブランチを使っているのであれば、 origin/masterが更新されるということです。 masterとorigin/masterの違い masterは、例えばローカルのファイルを更新してコミットする場合にはmaste

    git fetchの理解からgit mergeとpullの役割 - Qiita
  • gitにおけるコミットログ/メッセージ例文集100

    私はコミットログの書き方に悩む英語の苦手な人間である。実際、似たような人は世の中に結構いるようで、頻出単語を集計したりまとめたものは既にあって役に立つのだけれど、これらはあくまで単語の話であり、具体的な文を構成する過程でやっぱり困る部分がかなりあった。 要するに、どういう時にどういう文が使われているのか、ということを示した例文集が欲しいのである。ググると他にも「例文集があればいいのに」みたいな声はあるくせして、しかし誰も作ろうとしない。何なんだお前ら。それじゃ私が楽できないじゃないか。 仕方なく自分でまとめたので、増田に垂れ流しておく。 はじめにここで挙げているコミットログは全て実際のコミットログからの転載である。当然ながら各コミットログの著作権はそれぞれの書き手にある。いずれも各英文でググれば出てくるし、フェアユースの範囲なら許してくれるだろうと考え名前とプロジェクト名は割愛したが、ここ

    gitにおけるコミットログ/メッセージ例文集100
  • git/コミットログを修正する方法 - TOBY SOFT wiki

    はじめに † gitでコミットログを修正したいです。 Redmineとかで、refs #10とかcloses #10とかつけるとコミットログにチケットを関連付けられますが、これがよく書き忘れるんですね…。 直前のコミットログを修正する方法あるみたいです。 直前のコミットログ以外も修正する方法はないのかな…。 (Subversionだとhookスクリプトで許可できますよね。分散型だとやっぱり無理?) ↑ 直前のコミットログを修正する方法 † 直前のコミットログの修正は"git commit --amend" でよいみたいです。 例えば、 $ git commit -m "fixed xxx bug" : # コミット完了! # あ!しまった!"refs #(チケット番号)"つけるの忘れてた! # (私が使うプロジェクト管理ツールRedmineではrefs #13 のようにすると # コミット

  • GitHubでマージ済のプルリクをrevertした後に引き続きrevertされたブランチで作業を続行したい時 - Qiita

    GitHub上でプルリクをマージした後に、まだマージできる状態では無かったと気付きrevertする事ってありませんか? その後に問題になるのが、revertしたのはいいけど、引き続きそのrevertされたブランチで作業してまたプルリクを発行したい。という状況です。 この時に何も考えずに普通に作業を続行してプルリクを発行した場合、revertされた分の変更が失われてしまいます。 結構でかい事故に繋がる場合があるので、この時の対処方法を書きたいと思います。 前提 以下の操作を行っている。 プルリクを発行 プルリクをマージ マージ済のコミットのrevertプルリクを発行 revertプルリクをマージ ここまでの操作はGitHub上ですんなり行える。 再度revertされたブランチのプルリクを発行してみる 普通の感覚だと、また差分が復活していると思うのでプルリクが発行できそうな気分になると思います

    GitHubでマージ済のプルリクをrevertした後に引き続きrevertされたブランチで作業を続行したい時 - Qiita
  • Commit Hash から、該当 Pull Request を見つける方法 - Qiita

    git blameなどを使用して、変更を加えたcommit sha hashだけわかった時、git show daced1d3のようにすれば、そのコミットの変更内容を見れます。ですが、当は内容よりその変更を加えたPull Requestを知りたいことありますよね? そんなコミットからプルリクエストを探したい時に使えるgit aliasコマンドを紹介します。 git showpr Pull Requestをマージしているコミットログを見つけます。 show pull request => showpr としてますが、名前は好きにつけてください。 .gitconfigのalias設定 [alias] showpr = !"f() { git log --merges --oneline --reverse --ancestry-path $1...master | grep 'Merge p

    Commit Hash から、該当 Pull Request を見つける方法 - Qiita
  • Developer Tip: Keep Your Commits "Atomic" - Fresh Consulting

    Source control is a developer’s best friend. The ability to share code with multiple developers, track changes, and easily roll back when problems arise is indispensable in this distributed world. One question that often arises when first getting started with source control (it doesn’t matter if it’s Git, SVN, TFS, or others) is “What do I check in, and how often do I do it?” My answer is to make

    Developer Tip: Keep Your Commits "Atomic" - Fresh Consulting
  • 困った時の逆引きGitメモ(コマンドライン編) - MyEnigma

    わかばちゃんと学ぶ Git使い方入門〈GitHub、Bitbucket、SourceTree〉posted with カエレバ湊川 あい シーアンドアール研究所 2017-04-21 Amazonで探す楽天市場で探すYahooショッピングで探す 目次 目次 はじめに コミットメッセージにdiffを表示する 前回コミットした時の状態に戻す 直前のコミットをなかったコトにする 直前のpushをなかったことにしたい。 履歴を残さない 履歴を残す(より安全) 無理やりリモートリポジトリにローカルを合わせる 間違えたgitのaddを取り消す 一つ前のコミットを修正 git pullした時にコンフリクトしたファイルを調べる 更新されたファイルの一覧を表示する ブランチのグラフを見たい gitで管理していないファイルやディレクトリをすべて削除する。(gitinore対象のファイルも含めて) 過去のコミッ

    困った時の逆引きGitメモ(コマンドライン編) - MyEnigma
  • http://blog.inouetakuya.info/entry/20120826/1345979787

    http://blog.inouetakuya.info/entry/20120826/1345979787
  • コンフリクト発生!焦らず利用する4つのコマンド #git - Qiita

    目的 コンフリクトが発生した時に焦って何をしたら良いのか迷わないためのメモ。 コンフリクトが発生したら焦らず最低限次の4つのコマンドを利用して修正する。 ※ここでは普段良く利用するものに限定、方法は他にもある。 git status vi [conflict file] git add [conflict file] git commit -m 'fixed conflict'

    コンフリクト発生!焦らず利用する4つのコマンド #git - Qiita