タグ

gitに関するgigi-netのブックマーク (77)

  • 本の虫: GCCのgit移行が難航中

    GCCはgitへの移行を計画しているが、GCCの既存のsubversionレポジトリをgitレポジトリに変換する作業が難航している。 GCCの移行作業を検証しているのは他ならぬEric S. Raymond(ESR)だ。 ESRお手製の変換ツール、reposurgeonはsubversionからgitへの変換ができる。 Resource page for reposurgeon 3.44 しかしGCCは30年もの歴史を持ち、そのsubversionレポジトリも複雑だ。 ESRはGCCのためにreposurgeonのバグを潰し、勢い変換しようと試みたが、意外な障害に出くわした。メモリ不足だ。 GCC's Conversion To Git Is Being Held Up By RAM, a.k.a. Crazy DDR4 Prices - Phoronix ESRの所有する64GBのメモリ

    gigi-net
    gigi-net 2018/07/31
  • コードの半減期とテセウスの船 | POSTD

    プロジェクトが発展する際は、単純に新しいコードが古いコードの上に追加されているのでしょうか。もしくは、時間をかけて徐々に古いコードが新しいコードに置き換えられているのでしょうか。これを解明するために、手ごわい GitPython プロジェクトの助けを借りて、Gitプロジェクトを分析する 簡単なプログラム を構築してみました。履歴を年ごとに振り返り、 git blame を実行してみようと思ったのです(この処理を多少でも速くすることは簡単ではないと分かりました。しかし、ファイルのキャッシングを便宜的に含ませることや、変更された点を履歴から見つけること、 git diff を使って変更したファイルを無効にすることなどの詳細を、いつかお伝えします)。 頭がさえている時に、 テセウスの船 をダサくもじって、 “テセウスのGit” と名付けました。私は父親になって、ひどいダジャレを作れるようになった

    コードの半減期とテセウスの船 | POSTD
  • イラストを Git で管理したかったのでツールをつくった - blog.syfm

    イラストの管理 自分はたまにイラストを描いたりするのですが、以前からその管理方法に苦労していました。 苦労していた点は主に次の 2 点です。 バックアップ 制作過程 Gif をつくるのが面倒くさい 強い人は、短時間でもさらっとイラストを描いてしまいますが、自分は時間をものすごく掛けないとまともなものが描けないので、バックアップは結構頻繁に取ります。 手動でバックアップしようとした場合は、ふつうにファイルを複製する感じになると思います。 ただ、普段からコードを書いていて VCS を利用している身だと、どうしても原始時代かと錯覚してしまいます。 さらに、PhotoShop の psd 形式や CLIP STUDIO PAINT の標準である clip 形式はいろんなデータが詰め込んであるので 1 ファイル当たり平気で 50 MB くらい持って行かれます。これも結構厳しいところです。 VCS を

    gigi-net
    gigi-net 2016/10/25
    製作過程gifが簡単にできるのよい
  • gitにおけるコミットログ/メッセージ例文集100

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

    gitにおけるコミットログ/メッセージ例文集100
    gigi-net
    gigi-net 2016/07/25
    最高便利
  • git push --force でなく git push --force-with-lease を使う - valid,invalid

    前に社内チャットで流れてて初めて知った。 他人の変更を上書きするおそれのある git push --force でなく、最後に fetch したタイミング以降に他人が push していたら失敗する git push --force-with-lease を使う方が良い。 --force considered harmful; understanding git's --force-with-lease - Atlassian Developers Quipper では GitHub flow のような開発フローを採用している。 各開発者が feature branch を作成し、master / develop branch へ pull request を作る流れだ。 他人と修正箇所が重なってコンフリクトした際には rebase が必要で、 rebase 後の内容を push する際には

    git push --force でなく git push --force-with-lease を使う - valid,invalid
    gigi-net
    gigi-net 2016/04/06
    知見だ
  • 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
    gigi-net
    gigi-net 2015/12/27
    これをtigから使えるようにしたらクッソ便利になった
  • Git で monorepo を扱う際の課題とヒント | Atlassian Blogs

    多くのユーザーがその柔軟さ故に Git を分散型バージョン管理システムとして採用しています。特に Git のブランチとマージのモデルは、分散型の開発ワークフローを実現する強力な方法となっています。この柔軟性が大半のユースケースに機能する一方で、それほど美しく扱いきれないこともいくつかあります。そのようなユースケースの一つは、monorepo という大きな一枚岩のリポジトリで Git を使用することです。この記事では、Git を使用して monorepo を扱う際の課題について説明し、その問題を緩和するヒントを提供します。 monorepo とは? さまざまな定義がありますが、我々は monorepo を以下のように定義します。 論理プロジェクトを二つ以上含むリポジトリ (iOS クライアントやウェブアプリケーションなど) 各プロジェクトはほとんど関連がなく、疎結合、または異なる方法で繋がっ

    Git で monorepo を扱う際の課題とヒント | Atlassian Blogs
  • 学生向けgit謎解き技術イベント「git challenge」のご案内 - mixi engineer blog

    第6回git challengeを開催します! 2017/9/2に、第6回git challengeを開催します! 開催にあたってのスタッフへのインタビュー、および参加エントリーはこちらからどうぞ! 開催においては、チームごとに問題数だけ必要なprivate repos, およびノベルティなどGitHub Japanさまのご協力がありました。ありがとうございます! はじめに 人事 & イノベーション・センター 森です。 株式会社ミクシィ (ミクシィグループ) では、皆さんにおもしろいスキル体験をしていただくため、そして意欲やスキル・センスある学生さんたちとの出会いのために、さまざまな学生向けイベントを企画・実施しています。 セキュリティ・バグをわざと入れたSNS mixiを攻略していただく「Scrap Challenge」や、スクラムアジャイルのフレームワークであるインセプション・デッ

    学生向けgit謎解き技術イベント「git challenge」のご案内 - mixi engineer blog
    gigi-net
    gigi-net 2015/10/16
    おもしろそう
  • 開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ

    会員事業部サービス開発グループ長の村田です。 私は2015年1月から会員事業部でサービス開発エンジニアをやっていますが、2014年4月までは技術部開発基盤グループで Web サービス開発を加速させる様々な取り組みを実施していました。稿では、開発基盤グループ時代に私が取り組んだ開発者テストの失敗を追跡しやすくする取り組みについて説明します。 クックパッドの Web サービス開発と CI クックパッドのサービス開発は、大きくても5名くらいの小さなチームが一つの機能を担当します。しかし、多数のチームが1つの大きな Rails アプリケーションを同時に変更するのが特徴です *1。 Web サービス開発を加速する工夫には様々な方向性が考えられますが、ここでは、クックパッドのようなスタイルでの Web サービス開発を加速するために開発者テストを何如に円滑にするかを考えます。 図: オムキンス クック

    開発者テストの失敗を追跡しやすくすることで大人数での Web サービス開発を加速する - クックパッド開発者ブログ
  • UE4 ソースコントロールを使ってアセット管理をする - Let's Enjoy Unreal Engine

    UE4にはアセットのバージョン管理をしたり、比較をしたりするソースコントロールシステムが搭載されています。 標準でサポートされているものシステムとして、Apache SubversionとPerforceがあります。またこの他にも非公式プラグインとしてGitとMercurial用のものもあります。 UE4GitPlugin enlight/ue4-hg-plugin · GitHub 今回は最も使いやすくて、需要も多いと思うSubversionを使用して解説したいと思います。Perforceも20ユーザーまでなら無料で使えるので少数チームで使う場合はありだと思います。 TortoiseSVNを導入 実はUE4には標準でSubversionのバイナリー自体がバンドルされていたりします。が、こちらはちょっとコマンドベースになり、ハードルが少し上がってしまうので、今回は一番簡単に使えると思うTo

    UE4 ソースコントロールを使ってアセット管理をする - Let's Enjoy Unreal Engine
    gigi-net
    gigi-net 2014/12/08
    助かる
  • Git の仕組み (1) - こせきの技術日記

    目次 はじめに Git を使ったことがない方へ 生のデータが見たい方へ Git の全体像 .git の中身 Git オブジェクトデータベース 4種類のオブジェクト リファレンス リファレンスのリファレンス 大きなツリー Git オブジェクトの ID と 中身 ハッシュ関数 SHA1 の簡単な説明 tree と blob オブジェクト tree と blob の参照関係 ルートツリーの ID でツリー全体を識別する commit オブジェクト リファレンスとブランチランチランチ先頭を指すリファレンス HEAD リファレンス detached HEAD 2種類のタグ 一時待避 (stash) インデックス キャッシュとしての役割 マージ Fast-Forward マージ non Fast-Forward マージ rebase reset 2種類のブランチ 各リポジトリが自分のブランチ

    Git の仕組み (1) - こせきの技術日記
    gigi-net
    gigi-net 2014/12/08
    そこまで詳しくなかったから勉強になる
  • 第2回 RedPenを利用した文書の継続的検査への取り組み | gihyo.jp

    今回はRedPenを利用して文書を継続的に検査する方法について解説します。文書の継続的検査環境では、執筆中の文書をGitなどのバージョン管理システムで管理します。著者が行った変更が、サーバにあるバージョン管理システムにプッシュされるたびに自動でRedPenが適用されます。 稿では、はじめにGitなどのバージョン管理システムで文書を管理するメリットについて述べます。その後継続的インテグレーションの説明を行い、RedPenと組み合わせて文書の管理に利用してみます。 文書をGitで管理 最近は文書の管理にGitなどのバージョン管理システムを利用する人が多いのではないかと思います。私もある程度の大きさの文書はすべてGitで管理しています。昔の状態に簡単に戻れるという以外にも、文書管理にバージョン管理システムを利用すると次のようなメリットを享受できます。 マージ処理 バージョン管理システムを利用す

    第2回 RedPenを利用した文書の継続的検査への取り組み | gihyo.jp
    gigi-net
    gigi-net 2014/12/01
    文章のCIおもしろい
  • Carthage: Swift対応の新しいライブラリ管理

    Nov 20, 2014 iOS, OSXで利用できるライブラリ管理ツールといえばCocoaPodsが有名ですが、 それとはまた違った方針のCarthageというライブラリ管理ツールがリリースされました。 GitHubのデベロッパーを中心としたチームで開発が進められているようです。 https://github.com/Carthage/Carthage インストール方法 Releasesからpkgをダウンロードして、インストーラーを実行します。 使い方 Cartfileを書く carthage updateを実行する Carthage.buildに作成された.frameworkをXcodeに追加する Cartfileではgithub, gitの2種類のキーワードが利用でき、以下のように書きます。 サポート対象 Carthageはdynamic frameworkのみをサポートするため、C

    Carthage: Swift対応の新しいライブラリ管理
  • サイバーエージェントのGitHub活用 ~ 導入から運用体制、開発フロー、勉強会による現場への普及活動まで

    また、Organization[1]の数も360を超え[2]、リポジトリ数もOrganizationのものだけでも2000近く作られています[3]。 新規のプロジェクトは基的にGitを利用しており、既存プロジェクトもほとんどがSubversion(以下SVN)などからGitに移行しました。 記事では、Ameba事業部がどのようにGitを組織内に普及させていったか、その運用体制、現場でどのように利用されているのかをご紹介します。 [1] 複数アカウントをまとめるグループ機能です。リポジトリは個人単位だけでなく、Organization単位で作ることもできます。 [2] プロジェクト単位で1つのOrganizationを用意しています。 [3] 個人アカウントで作成したり、他からforkしたリポジトリは除いた数です。 GitHub Enterprise導入への道のり GHE導入以前の標準

    サイバーエージェントのGitHub活用 ~ 導入から運用体制、開発フロー、勉強会による現場への普及活動まで
  • みんなで使うGitHub

    β版 ソーシャルコンテンツプラットフォームとして注目を集めているGitHub。使いこなすにはまずgitを使えるようにならないと……と思って二の足を踏んでいる非プログラマの先入観を打ち砕くべく、gitコマンドもgitアプリも使わずにGitHubを使ったコンテンツ管理・コラボレーションを徹底解説。これでもうPull Requestも怖くない! β版について 書のステータスは現在β版であり、現在、著者やレビュアの方々により追加・修正が行われている段階です。 いま購入されてお読みいただけるのはその途上の原稿を元にしたものです。 最終的に正式公開されたものもダウンロードしお読みになることはできますが、 正式公開版を読みたい方には今しばらくお待ちいただくことになります。あらかじめご了承ください。 概要サンプルリンク用タグ 関連サイト書の関連ページが用意されています。 『みんなで使うGitHub』サ

    みんなで使うGitHub
    gigi-net
    gigi-net 2014/07/02
    教育用に楽そうだから買った
  • とうとう Git 2.0 が現実のものに。便利な機能満載 | Atlassian Japan 公式ブログ | アトラシアン株式会社

    長い間待たれてきた git のメジャーバージョンアップがリリースされました。Changelog に目を通し、素晴らしい機能を見つけられることに興奮しています。過去の git リリースの情報をおさらいしたい場合は、バージョンアップのたびにその情報を特集してきた私の過去記事をご覧ください: 1.8.2、1.8.3、1.8.4、1.8.5、1.9。 このブログ記事では、今回のバージョンアップの一部しか取り扱うことしかできません。変更とバグ修正の完全リストをご希望の場合は、Changelog の完全版をご覧ください。 デフォルト設定一部変更: ユーザビリティの改善と混乱を解消 まず最初に、互換性に影響する変更を見ていきましょう。複数の変更がありますが、これらのアップデートは、初心者にとどまらず多くの人々を悩ませてきた誤解を解決するもので歓迎できると思います。これらの変更は、.gitconfig を

    とうとう Git 2.0 が現実のものに。便利な機能満載 | Atlassian Japan 公式ブログ | アトラシアン株式会社
    gigi-net
    gigi-net 2014/06/10
    細かいところが便利になってる
  • git-browse-remote 0.1.0 を公開しました & Vim からいい感じに GitHub を開く - 詩と創作・思索のひろば

    git-browse-remote | RubyGems.org | your community gem host git-browse-remote は、コマンドラインからいい感じに(リビジョンを指定したりファイルを指定したり)リポジトリのウェブサイトを開いてくれるツールです。 入れていた変更でまだ RubyGems に上げてなかったぶんをリリースしただけなんですが……。今回の変更で行番号(-L)に範囲が指定できるようになりました。 % git browse-remote -L 5,10 -- README.md で https://github.com/motemen/git-browse-remote/blob/master/README.md#L5-10 を開いてくれます。--stdout を指定すれば標準出力に URL を書き出すだけ、ってこともできます。 おまけで便利な Vi

    git-browse-remote 0.1.0 を公開しました & Vim からいい感じに GitHub を開く - 詩と創作・思索のひろば
    gigi-net
    gigi-net 2014/06/05
    お便利だ
  • gitの歴史上からpasswordを完全に削除したい - (゚∀゚)o彡 sasata299's blog

    2014年05月19日10:17 Git git歴史上からpasswordを完全に削除したい git で管理しているプロジェクトで「あっ、しまったパスワードが紛れ込んでしまった…!」みたいなことがあって「どうしたらいいんやー><」と思っていたんですが、git filter-branch という最強のコマンドを使えばなんとかなるんですね。 今回は PASSWORD という文字列を含む行を git歴史上から完全に削除するというのをやってみました。sed -e '/xxx/d' が xxx という文字列を含む行を削除 (delete) するコマンドです。 git filter-branch --tree-filter "find . -type f -exec sed -i '' -e '/PASSWORD/d' {} \;" そうすると PASSWORD という文字列を含む行の痕跡が奇麗

    gitの歴史上からpasswordを完全に削除したい - (゚∀゚)o彡 sasata299's blog
    gigi-net
    gigi-net 2014/05/19
    これ、Githubにpushしてても大丈夫なのかな。古い奴全部残ってた気がする
  • gibo·プロジェクトに合わせた.gitignoreを生成 MOONGIFT

    Gitプロジェクトをはじめる際には.gitignoreを設定するでしょう。その際にはプロジェクトの言語や種類によってデフォルトとも言えるような設定が存在します。GitHubでは予めそうした.gitignoreを生成する機能がありますが、GitHub以外の場合は自分で用意しなければなりません。 そこで使ってみたいのがgiboです。多数のプロジェクトに対応した.gitignore生成ライブラリです。 giboの使い方 Mac OSXの場合はHomebrewで提供されています。 $ brew install gibo これで準備は完了です。まずはヘルプを見てみましょう。 $ gibo --help gibo 1.0.2 by Simon Whitaker <simon @goosoftware.co.uk> https://github.com/simonwhitaker/gibo Fetch

    gibo·プロジェクトに合わせた.gitignoreを生成 MOONGIFT
    gigi-net
    gigi-net 2014/05/02
    こんなの欲しかった。助かる
  • ScaleOut | Supership

    「ミライリアルの幸せを、デジタルの力で創る」ことを目指すSupershipグループの社内報です。日々の出来事、メンバーの働く様子や声、未来への想いなど、Supershipグループの”Be Super”なストーリーをみんなでシェアしていきます。

    ScaleOut | Supership
    gigi-net
    gigi-net 2014/04/18
    Travis以降、後発でどんどん良いサービスが出てきたからTravisが微妙に見える