タグ

gitに関するkwryのブックマーク (78)

  • git reset --hardした内容を取り消す (git reset --hard, reflog, HEAD@{x}, 取り消してしまったコミットを元に戻す) - いろいろ備忘録日記

    相変わらずGit勉強中です。 以下自分用のメモです。 特定のコミット自体をなかったことにするには git reset --hard ... を利用すればいいのですが、このコマンドはhardとオプションが ついているように、コミット自体が無かったことになってしまいます。 なので、間違えて違うコミットの部分にresetしてしまうと アワワワな事になります。(というか、なりましたw) でも、さすがgitさん。当然元に戻す方法がありました。 reflogを使って、元に戻せます。 元に戻す場合に利用するコマンドも git reset --hard です。 git reset --hard "HEAD@{x}" xの部分には、reflogの番号が入ります。 通常元に戻す場合は、"HEAD@{1}"になると思います。 # 試すためのブランチつくって切り替え git checkout -b test-br

    git reset --hardした内容を取り消す (git reset --hard, reflog, HEAD@{x}, 取り消してしまったコミットを元に戻す) - いろいろ備忘録日記
    kwry
    kwry 2016/06/10
  • git リポジトリからプロジェクトの概要をつかむ

    もうすぐ春ですね。この時季は異動したり転職したりで新しいプロジェクトにジョインする人が多いのではないでしょうか。 さて、そんな新しいプロジェクトにジョインしたとき、プロジェクトの状況を git リポジトリからざっと見てみようというのが今日のテーマです。 よくマージしてる人ランキング マージしてる人とレビュアーは同じことが多い。つまりコードをよく知る人がこれでわかる(マージも自分でやるプロジェクトだとそうではないだろうけど)。 $ git log --merges --format="%cn" | sort | uniq -c | sort -r | head コミッタごとのコミット数ランキング 誰がよくコード書いてるかがわかる。もしくは、こいつ他人のコード削除してばっかだなとか。 add/delete 合計コミット $ git shortlog -sn コミッタごと add/delete

    git リポジトリからプロジェクトの概要をつかむ
    kwry
    kwry 2015/02/24
  • Use Git Hooks to Automate Necessary but Annoying Tasks

    Use Git Hooks to Automate Necessary but Annoying Tasks
    kwry
    kwry 2014/09/21
  • 巨大なリポジトリ を Git で上手く扱う方法 | Atlassian Japan 公式ブログ | アトラシアン株式会社

    git は、コードベースの発展過程を記録し、開発者間の協同作業を効率化する強力なツールです。でも、記録対象のリポジトリがとてつもなく巨大なものになったときは何が起こるのでしょうか? この記事では、いくつかの異なる意味での巨大化に正しく対処するためのアイデアと手法を少し紹介してみたいと思います。 二種類の 巨大なリポジトリ よく考えてみると 巨大なリポジトリ が生ずる理由はおおまかに言って二つあります: 非常に長い期間にわたって履歴が積み上げられた (プロジェクトが非常に長い期間継続的に拡大を続けたために開発成果が積み重なった) 場合 巨大でしかも履歴の記録が必要なバイナリ データが存在し、それがコードに反映される場合 その両方の場合 即ち、リポジトリの巨大化は二つの異なる方向に向かって起こることになります。それは、作業ディレクトリのサイズ (即ち直近のコミットのサイズ) の問題と全体の履歴

    巨大なリポジトリ を Git で上手く扱う方法 | Atlassian Japan 公式ブログ | アトラシアン株式会社
    kwry
    kwry 2014/09/01
  • 403 Forbidden

    \閉鎖予定のサイトも売れるかも?/ アクセスがないサイトもコンテンツ価値で売れる場合も… ドメインの有効期限を更新してサイト売却にトライしてみましょう

    kwry
    kwry 2014/04/20
  • Git における SSH オプション指定方法あれこれ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Git における SSH オプション指定方法あれこれ - Qiita
    kwry
    kwry 2014/02/27
  • gitのbranch ruleを決める際の個人的チェック事項 - 愛と勇気と缶ビール

    プロダクションリリースの前は適当でいい。適当にfeature branch切ってガンガンmasterにmergeしてdeployすればいい。変更の種類によっては直接masterにぶち込んでしまえばいい。スピード感が大切な時期なので、いちいちbranch ruleを定めてそれを遵守すること自体が時間の無駄。 プロダクションリリースからそれ以降は、 プロダクションにはmasterとか特定のbranchではなくtagを切ってそれをdeploy。切り戻す先は一つ前のtag プロダクション以外の環境には特定のbranchをdeploy。切り戻すというか修正の仕方は適宜。 という感じにする。それに加えて、「feature branchを現在の最新安定版にmergeした状態で結合testが出来るbranch」があるとよい。「それってmasterじゃね?」masterではない。masterをこの目的に使う

    gitのbranch ruleを決める際の個人的チェック事項 - 愛と勇気と缶ビール
    kwry
    kwry 2014/01/15
  • Git の diff を美しく表示するために必要なたった 1 つの設定 #git - 詩と創作・思索のひろば

    Git に同梱されている contrib/diff-highlight を使います。 あとは README に書いてあることの引き写しですが、PATH の通ったディレクトリに置いて、~/.gitconfig に以下のように設定を書く。 [pager] log = diff-highlight | less show = diff-highlight | less diff = diff-highlight | less すると、対応するコマンドの出力がこんな風になります。 行レベルの diff に加えて、単語レベルでの diff もハイライトされ、GitHub での diff のように描画されました。 組み込みのオプションで --color-words というのがありますが、こちらを使うと行レベルの diff 情報が失われるので、少し不便だったわけですね。とすべて README に書いてあ

    Git の diff を美しく表示するために必要なたった 1 つの設定 #git - 詩と創作・思索のひろば
    kwry
    kwry 2013/11/26
  • すでにコミット済みのファイルを無視する & git 軽量化 - hkobayashの日記

    コード読みたくて clone したら一緒に管理されてる gif やら png やらその他のバイナリファイルも clone されて DISK 圧迫するからそこら辺は消して無視したい。 gitignore や .git/info/exclude で無視しようとしても、すでにコミットされてるから無視できない。 そんな時は、下記の方法を使う。 1.assume-unchanged #無視 git update-index --assume-unchanged [ファイル名] #無視解除 git update-index --no-assume-unchanged [ファイル名]2.skip-worktree #無視 git update-index --skip-worktree [ファイル名] #無視解除 git update-index --no-skip-worktree [ファイル名] ど

    すでにコミット済みのファイルを無視する & git 軽量化 - hkobayashの日記
    kwry
    kwry 2013/11/20
  • gitでブランチを切り替えた時に何かする(例えばrbenvでRubyのバージョンを切り替えたり) - ( ꒪⌓꒪) ゆるよろ日記

    タイトルの通りのことをやりたかったっぽいので。 例えば、現在のRubyのバージョンはREE 1.8.7だけど、次回リリースからは1.9.3にあげることになっている場合なんか、masterブランチはREE使うけどdevelopブランチは1.9.3で動作させる必要があるっぽいけど、checkoutするたびにrbenv localとかするのダルいしよく忘れるので全力回避したいっぽいです。 で、どうやるかというと、gitのhookでpost-checkoutというのがあり、そこに色々書くとふんわりとやってくれる風味っぽい。 gitリポジトリの.git/hooks/post-checkout をこんな風に書いておくとよいっぽい。 #!/bin/sh # Change ruby version CURRENT_BRANCH=`git rev-parse --abbrev-ref HEAD` RUBY_

    gitでブランチを切り替えた時に何かする(例えばrbenvでRubyのバージョンを切り替えたり) - ( ꒪⌓꒪) ゆるよろ日記
    kwry
    kwry 2013/10/12
  • チーム開発に必要なGitコマンドを神速で習得しよう! 

    すみません、タイトルは釣りです。書籍『入門git 』と『もっと早く知りたかった! Gitが鬼のようにわかるスライド厳選7選』、『Gitがこわくて触れられなかったけど、このスライドで理解出来るようになったよGitサイトまとめ』紹介のスライドを読んで、理解したことをまとめるためにこの記事を書きました。今までは個人でしかGitを使っていなかったので、チーム開発に必要なGitコマンドを少しでも理解できるように頑張ります! (05/13 08:45) githelpを追加 🐡 Gitの基的な開発スタイルについて From イラストでわかる!git入門の入門 Gitの基的な開発スタイルは次のとおりです。 (1) gitの開発ではローカルで使う個人リポジトリとチームで使う共有リポジトリを用いる (2) 共有リポジトリに push すると個人リポジトリのこれまでのコミット内容を送れる (3) pul

    チーム開発に必要なGitコマンドを神速で習得しよう! 
    kwry
    kwry 2013/08/28
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    kwry
    kwry 2013/07/26
  • git pullの詳細な挙動を追ってみる - hokaccha memo

    git push/pullは何気なく使ってるけど実はよくわかってなかった。ことのきっかけはこういう質問。 hogeというリモートブランチをローカルのhogeブランチにもってきたい hogeをローカルのmasterにはマージしたくない pullでなんかこんな感じでいけそう? $ git pull origin hoge:hogeでもこれは間違えで、なぜか今いるブランチ(master)にhogeがmergeされるし、期待してる動作じゃない。正解はこう。 $ git branch hoge origin/hogeもしくはチェックアウトも同時にするなら $ git checkout -b hoge origin/hogeこう。自分は普段後者のやり方でやってたけど、なんで上のはダメで下のが正解なのか説明できなかったのでちゃんと調べてみた。 入門Gitと実用Git、あとhelpを参考にした。 ブランチ

    git pullの詳細な挙動を追ってみる - hokaccha memo
    kwry
    kwry 2013/07/05
  • 【翻訳】Gitをボトムアップから理解する

    John Wiegleyさんの "Git from the bottom up" を翻訳しました。 元PDFはこちらからダウンロードできます: http://newartisans.com/2008/04/git-from-the-bottom-up/ 元記事のライセンスがクリエイティブコモンズのBY-SAであったため、この翻訳もBY-SAとなります。 ライセンスを守って自由にご利用ください。(詳しくは記事内の最初にも書いてあります) 翻訳ミスの指摘や改善の提案等があればブログコメントやTwitter(@oshow)などで遠慮なくどうぞ。 Git をボトムアップから理解する Wed, 2 Dec 2009 by John Wiegley 私が Git を理解しようと調査した時、高級なコマンドの視点から眺めるよりボトムアップ式に理解することが役立った。そしてボトムアップ視点で見る Git

    【翻訳】Gitをボトムアップから理解する
    kwry
    kwry 2013/07/03
  • QA@IT サービス終了のお知らせ - @IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    QA@IT サービス終了のお知らせ - @IT
    kwry
    kwry 2013/07/01
  • detached HEAD状態から元に戻すコマンド (git, checkout, fix a detached HEAD, .git/HEAD, refs/heads/master) - いろいろ備忘録日記

    gitにて、意図せずにdetached HEAD状態になってしまった場合に元に戻る方法についてメモメモ。 git触っていて、たまにdetached HEAD状態に突入してしまうことがあります。(私の場合) 大抵は、checkoutで特定のコミットを指してしまった場合です。 detached HEADは、そのまんま「デタッチ状態のHEAD」です。 デタッチはアタッチの逆なので、これもそのまんま「切り離された状態」という意味になります。 でも、この状態になるとgitが警告メッセージを表示してくるので、いきなりなるとアセりますw 具体的には以下のようなメッセージが表示されます。 # リポジトリ初期化 git init # 適当にファイル追加してコミット touch test.txt git add -A git commit -m "add" git commit -am "mod" # 現在,

    detached HEAD状態から元に戻すコマンド (git, checkout, fix a detached HEAD, .git/HEAD, refs/heads/master) - いろいろ備忘録日記
    kwry
    kwry 2013/07/01
  • こわくない Git

    「マージがなんとなく怖い」「リベースするなって怒られて怖い」「エラーが出て怖い」 Git 入門者にありがちな「Git 怖い」を解消するため、Git のお仕事(コミット、ブランチ、マージ、リベース)について解説します。

    こわくない Git
    kwry
    kwry 2013/06/28
  • Git初心者が絶対に覚えておくべきコマンド - idesaku blog

    Gitの使い方を覚えるにあたって、まず知っておきたいのは――git-cloneだのgit-commitだのは当然として――「操作をミスったときにどのように回復するか」である。それを実現するのは、次の3つのコマンドだ。 git-commit --amend git-reset git-reflog git-commit --amend あるファイルをコミットしたとしよう。 $ (edit...) $ git commit -am 'メッセージ生成処理を実装したよ。'しかし、しばらくして彼は気づいた。 def create_massage(param) ...typoしてる!massageじゃない、messageだ!マッサージを作ってどうする! 慌てるな。まずは直してステージに上げるんだ*1。 def create_message(param) ...$ git add .そして…。 $ gi

    Git初心者が絶対に覚えておくべきコマンド - idesaku blog
    kwry
    kwry 2013/06/25
  • Git で no branch に commit した時の対処法

    ► 2025 (1) ► 01 (1) ► 2023 (1) ► 06 (1) ► 2022 (3) ► 09 (1) ► 06 (1) ► 03 (1) ► 2021 (4) ► 10 (1) ► 09 (1) ► 06 (1) ► 04 (1) ► 2020 (5) ► 11 (1) ► 10 (1) ► 09 (1) ► 06 (2) ► 2019 (7) ► 09 (1) ► 06 (4) ► 05 (1) ► 03 (1) ► 2018 (14) ► 12 (1) ► 11 (1) ► 10 (5) ► 09 (3) ► 06 (1) ► 05 (1) ► 03 (2) ► 2017 (76) ► 09 (5) ► 07 (2) ► 06 (5) ► 05 (1) ► 04 (2) ► 03 (11) ► 02 (23) ► 01 (27) ► 2016 (39) ► 10 (1

    kwry
    kwry 2013/06/21
  • Gitでリモートブランチを消してもgit branch -aに出てくる件 - chulip.org

    $ git push origin :remote_branch_nameとかやるとリモートブランチを削除できるのですが上記コマンドを実行した環境以外で git branch -aをやるとまだ表示されてしまっていたので消す方法。 git fetchで行けるかと思ったのですがどうもfetchは同期をとるものではなく取りに行くだけのようですね。 下記サイトを参考にさせていただきpruneオプションの存在を知りました。 どこにもリンクしていないオブジェクトは削除してくれるようです。 $ git fetch --prune 2011-12-01 ただ、このオプションはgit1.6.6以降のみ使用可能とのことで。 git fetch --prune doesn't exists with all git versions · Issue #75 · fcuny/jitterbug · GitHub

    Gitでリモートブランチを消してもgit branch -aに出てくる件 - chulip.org
    kwry
    kwry 2013/06/18