タグ

gitに関するk1LoWのブックマーク (86)

  • Git活用法 ー コードはいつも1行ごとにドキュメント化されている | POSTD

    コードには1行ごとに隠しドキュメントがあります。 次のコードスニペットの4行目を書いた人は、何か理由があってDOMノードの clientLeft プロパティにアクセスしたのでしょうが、結果的に何もしていません。これはかなり不可解です。なぜこうしたのか、あなたは説明できますか? 今後、この呼び出しを変更したり削除したりしても安全でしょうか? // ... if (duration > 0) this.bind(endEvent, wrappedCallback) this.get(0).clientLeft this.css(cssValues) 私ではなく他の人があなたにこのコードを見せたとして、誰がこの行を記述したのか、どんな理由があったのか、このままの状態にしなければいけないのか、あなたはおそらく説明できないでしょう。ただし、プロジェクトを進めているときは大抵の場合、バージョン管理シス

    Git活用法 ー コードはいつも1行ごとにドキュメント化されている | POSTD
    k1LoW
    k1LoW 2014/12/19
  • S3をgitのリモートリポジトリにする - so what

    3年前の話題が自分的に再燃したので、ブログを書く。 要約 jgit(パッチバージョン)を使うとS3をリモートリポジトリにできます gitのカスタムコマンドを作るとさらにシームレスに連携できます jgit jgitJavaで実装されたgitでEclipseのプラグインなどで使われているが、S3をリポジトリにできるというおもしろ機能がある。 ただし、家のバージョンではus-east-1しか使えなくて「うーむ…」と思っていたのだが、ソース見たら案外簡単に直せそうだったので、直してプルリクを投げた。 修正版jgitの作り方 brew install maven git clone https://github.com/winebarrel/jgit.git cd jgit git checkout origin/support_for_other_region -b support_for_o

    S3をgitのリモートリポジトリにする - so what
    k1LoW
    k1LoW 2014/11/28
  • git-svnで削除されたリモートブランチをローカルでも削除する方法 - Webtech Walker

    git-svnをつかっていてsvnのリモートブランチを削除しても、ローカルには残ってるのがうざいなあと思ってたのが解決した。 typester先生に教えてもらいました。++ $ git branch -r -d my-remote-branch これでおk!

    git-svnで削除されたリモートブランチをローカルでも削除する方法 - Webtech Walker
    k1LoW
    k1LoW 2013/10/03
  • pull request を利用した開発ワークフロー

    pull request を利用した開発ワークフローの話しですが、あんまりプルリの話ししてないし、コードレビュー的なお話しが多いです…。

    pull request を利用した開発ワークフロー
  • Pro Git 日本語版電子書籍公開サイト

    | 書籍紹介 | サイトの目的 | ダウンロード | 更新情報 | 謝辞 | お問い合わせ | 書籍紹介 Git は、 Linux カーネル開発のために Linus Torvalds さんが2005年に公開した分散型バージョン管理システムです。スタートアップのような小規模組織からGoogle、 IBM のような巨大企業で、また数多くのオープンソースプロジェクトで利用されています。現在の Git 開発は、濱野純さんを中心としたコミュニティによって非常に活発に行われています。 書 Pro Git は、2009年に Apress から初版が、2014年に第2版が出版された、Git の解説書です。著者の Scott Chacon さんは、GitHub 社の CIO、Git のエバンジェリストであり、Git 公式サイトの管理者でもあります。 書の内容は、出版以降も有志により頻繁に更新されており、

    k1LoW
    k1LoW 2013/08/20
  • git-svnの使い方を覚えた - idesaku blog

    分散SCMを使いたい!と思う今日この頃。 仕事ではSVN(Subversion)を使っているのだが、ちょっとしたお試し編集をするためにブランチを作ることに抵抗がある。ブランチは欲しい、大きめな変更をコミット無しで行いたくない、やはり少しずつコミットして進めていきたい。しかし、変更が全て記録されてしまうのがいただけない。ログが残るのは良いことなのだが、当に使うかどうか未知数な実験的プログラミングのログまで残したくない。使うと決まってから初めて残すようにしたいのだ。 すまん、これまで一緒に仕事をしてきた人々よ。俺はこれまで「ログが残って困ることがなんかある?いらなきゃ無視すればいいだけなんだから、気にするな。ブランチでもなんでもバンバン作ってしまえ!」とうそぶいてきているわけだが…ハッタリかましてました!当は俺も抵抗があるのだ。 そこで、分散SCMだ。さらにいうと、SVKがいまひとつ気に入

    git-svnの使い方を覚えた - idesaku blog
  • CentOS6にGitLabをインストールする方法

    GitLabgithubのクローンのようなもので、表に出せないけどgithubみたいなものが使いたいという場合に有効だろう。 ここではCentOS6 (x86_64)にインストールする手順を解説する。 yum用の追加レポジトリの設定CentOS6の標準レポジトリには存在しないパッケージが多数あるため、epelとremiを使用する。まだepelとremiを利用していない場合は、以下のように設定する。 rpm -Uvh http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/6/x86_64/epel-release-6-7.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 必要なパッケージの導入CentOS6.2のrubyのバージョンはデフォルトで

    CentOS6にGitLabをインストールする方法
  • こわくない Git

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

    こわくない Git
  • 【派閥別】Gitのコミットを間違えたときの対処法まとめ - 本当は怖いHPC

    追記:たくさんブクマしていただいて驚いております。ブクマコメントだと、やはり git push -f は反則だろという意見がサイレントマジョリティのようですが、そこはそれ、自 己 責 任 追記2(2011/11/07):commit messageをミスった場合について訂正しました。 git rebase -i で直近のコミットを "edit" にして修正すると、 「--amend使えや」と言われるようです。 gitのコミットをしくじった時の対処法について、一覧性の高いまとめがなかったので作りました。正確さは保証できないので、コマンド名ヒントに自分でググって下さい ほかのやり方があるよ、間違ってるよ等のご指摘歓迎です。 派閥別 gitでコミットミスった時のまとめ | ├─ 一人で使ってるよ |   | |   ├─ 手元に変更を取り戻したいよ(1)(そうだね、add忘れだね派) |   |

    【派閥別】Gitのコミットを間違えたときの対処法まとめ - 本当は怖いHPC
    k1LoW
    k1LoW 2011/11/07
  • mod_wiki - cuspy wiki

    俺の考えた最高のWikiシステムmod_wikiは軽量、高速、CLIフレンドリなGitベースのWikiシステムです。 特徴gitによる履歴管理Markdown記法による書式Pure C (apache module)mod_wiki はこんな人にオススメですWEBブラウザを使わずにemacsやvimなど、お気に入りのテキストエディタで編集したいRDBを使いたくない文書もSCMで管理したい、そしてgitが好きソースコードhttps://github.com/hamano/apache-mod-wiki ビルド% ./autogen.sh % ./configure --with-apache=<APACHE_DIR> \ --with-discount=<DISCOUNT_DIR> \ --with-libgit2=<LIBGIT2_DIR> --with-clearsilver=<CLEA

    k1LoW
    k1LoW 2011/10/05
  • git pushがrejectされたときの解決の手順 - 今日もスミマセン。

    いまだにgitがよくわかってない。 git push すると $ git push To git@github.com:snaka/snaka-code-pocket.git ! [rejected] master -> master (non-fast forward) error: failed to push some refs to 'git@github.com:snaka/snaka-code-pocket.git' To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes before pushing again. See the 'non-fast forward' section of 'git push --help' for d

    git pushがrejectされたときの解決の手順 - 今日もスミマセン。
    k1LoW
    k1LoW 2011/09/22
  • Gitを使い始めたらやっておきたい便利な設定いろいろ

    $ git config --global user.name "yoshiki" $ git config --global user.email "yoshiki@example.com" ■カラーリング git status や git diffなど、デフォルトでは味気ない文字がズラズラと画面に表示されますが、それを見やすいようにカラーリングすることができます。

    Gitを使い始めたらやっておきたい便利な設定いろいろ
    k1LoW
    k1LoW 2011/09/02
  • gitでアレを元に戻す108の方法 | Webシステム開発/教育ソリューションのタイムインターメディア

    以前gitで一度行った変更をなかったことにする方法4つを紹介しましたが、 日常的に git を使用していると他にも様々な 「なかったことにしたい」「元に戻したい」 という状況に遭遇します。 そのひとつひとつについて対処方法を紹介していきます。 目次 問題1: ライブラリの新機能を試すためにあれこれ適当なコードを書いてみた。でももう要らない。問題2: トピックブランチをマージしたけど実はまだ不完全だった。マージをやり直したい。問題3: リリース後に発覚したバグ。原因は30日前に自分が行ったコミットだった。なかったことにしたい。問題4: 新しいコミットしようとして間違えてgit commit –amendで書き換えてしまった。元に戻したい。問題5: 色々作業していたら作業ディレクトリの内容が混沌としてきた。一度綺麗な状態にしたい。問題6: 作業ディレクトリにゴミファイルが溜まってきた。一度綺麗

    gitでアレを元に戻す108の方法 | Webシステム開発/教育ソリューションのタイムインターメディア
    k1LoW
    k1LoW 2011/08/22
  • gitでインデント量以外の変更点を表示する | Webシステム開発/教育ソリューションのタイムインターメディア

    問題 バグフィックスなりリファクタリングなり何かをするため、 コード中の複数のブロックのインデントを変更するということは少なくありません。 例えば以下のようなコードがあるとしましょう: private void UpdateData() { var db = GetDatabaseConnection(); data1.UpdateSomething(); data2.UpdateSomething(); data3.UpdateSomething(); data1.Save(db); data2.Save(db); data3.Save(db); } このコードは一連のデータを更新してデータベースに保存しています。 しかしこの手の更新はデータの一貫性を保証するためにトランザクション内で実行されなければなりません。 という訳でこのコードは以下のように修正されるべきです: private v

    gitでインデント量以外の変更点を表示する | Webシステム開発/教育ソリューションのタイムインターメディア
    k1LoW
    k1LoW 2011/07/21
  • それ etckeeper でできるよ - /etc 以下を Git で自動的にバージョン管理 - おいちゃんと呼ばれています

    こんにちはこんにちは。一昨日、さくら VPS に Git をインストールするエントリーを書きましたが、実はバージョン管理は etckeeper にもお世話になっています。 etckeeper というのは、Git 等のバージョン管理ツールを用いて、/etc 以下をほぼ自動的に管理してくれる有り難いツールです。下記のタイミングで自動的にコミットしてくれます。手動で任意のタイミングでコミットすることもできます。 -yum コマンド実行の前後 -日付が新しくなったとき << 以下、さくら VPS(CentOS 5.5 -64bit)で etckeeper を使えるようになるまでの手順をまとめてみましたので、よろしければ参考にしてください。 *目次 Git のインストール etckeeper のダウンロード etckeeper の設定ファイルの編集 etckeeper のインストール etckeep

    それ etckeeper でできるよ - /etc 以下を Git で自動的にバージョン管理 - おいちゃんと呼ばれています
  • GitHubへpull requestする際のベストプラクティス - hnwの日記

    みなさん、Git使ってますか?僕はまだメインのVCSがSubversionなのもあって、なかなか慣れません。せっかくGitを使っているのに、ちょっと不便なSubversionくらいの位置づけです。でも、同じような理解度の人って多いんじゃないでしょうか。 一方で、最近はGitHub管理のオープンソースプロジェクトが増えてきました。バグレポートを送るにしてもpull request*1が前提のような空気があり、Git初心者には少し敷居が高い印象があります。 そんな僕も先日初pull requestをしてみたんですが、色々な失敗の積み重ねで残念なpull requestになってしまいました。その反省を元に、稿ではpull requestする際のベストプラクティスを紹介します。これは「Git Workflow」をベースにコマンド例などを加筆したものです。 概要 pull requestする際は、

    GitHubへpull requestする際のベストプラクティス - hnwの日記
  • git cherry-pick を覚えた - @Inject

    「全部mergeは困る。この変更だけgithub側にもmergeして更新したいのに」 って場面に遭遇したので、そんなことができないかしらべてみたら、あっさりできることがわかった。 git cherry-pick commit-idでいいらしい。 なんかかわいらしいコマンド名。

    git cherry-pick を覚えた - @Inject
    k1LoW
    k1LoW 2011/05/18
  • anything-vcs-project.elというelispを書いた。 - podhmoの日記

    https://github.com/podhmo/anything-vcs-project.el これ何? バージョン管理システム(git,hg)などで管理されているファイルをanythingからアクセスするためのelisp。 (以降バージョン管理システム=VCS) 実際の動作。 現在開いているバッファのディレクトリから、~/.{git,hg}を探す。 ~/foo/bar/boo/yee.txtにいる時は、~/foo/bar/boo/.git, ~/foo/bar/.git, ~/foo/.git, ~/.gitを探していく (hgについても同様) 見つかったら、そのVCSが管理しているファイルをanythingで選択して絞り込む 次回からは、開いているバッファがVCSが管理しているバッファでなくても開けるように覚えておく。 便利なのは、gitとhgどちらで管理しているか気にしなくて良い

    anything-vcs-project.elというelispを書いた。 - podhmoの日記
  • git diffで比較した差分のファイルだけを抽出するスクリプト - hogehoge foobar Blog Style Beta

    HTML等をgitで管理していると、サーバーへのアップロード用のファイルとしてコミットした差分のファイルだけを抽出したい事があります。 「git diff」で差分の表示は出来るのですが、ディレクトリ構造を保持した状態でのファイル抽出みたいな事は出来ないようだったので、Perlでスクリプトを書いてみました。 ※bashとかでも書けると思いますが、なんとなくPerlで書いてみました。 「git diff --name-only」で差分のファイル名を取得 普通にgit diffを使うと・・・ gitでの差分の表示には「git diff」を使用しますが、そのまま使うとファイルの内容まで表示されてしまいます。 $ git diff HEAD^ diff --git a/bar.txt b/bar.txt new file mode 100755 index 0000000..9e74262 ---

    git diffで比較した差分のファイルだけを抽出するスクリプト - hogehoge foobar Blog Style Beta
    k1LoW
    k1LoW 2011/03/31
  • git bisectでメソッドが削除されたコミットを探す - しんふぉにゃん

    git bisectを使うと、コミット履歴から「何らかのテスト」が初めて失敗するコミットを探し出すことができます。 ちょうど、「Doctrine2 MongoDB ODMのDocumentManagerからcreateQuery()メソッドが無くなっている」という発言を見かけたので、これを例にやってみます。 まず、リポジトリをcloneしてきて準備 $ git clone git://github.com/doctrine/mongodb-odm.git $ cd mongodb-odmbisectを開始します。最新のコミットではメソッドが無くなっているので「bad」、どこか適当な古いコミットで目的のメソッドがあるものを「good」に指定します。最初のbadとgoodを指定すると、gitがその中間のコミットを取ってきてくれます。 $ git bisect start $ git bisec

    git bisectでメソッドが削除されたコミットを探す - しんふぉにゃん
    k1LoW
    k1LoW 2011/01/25