データバージョンの管理とは? データバージョンの管理とは、バイナリデータのバージョンを管理することを指します。データバージョンの管理は、Git 等でのコードのバージョン管理をバイナリデータに拡張しています。実験の再現性を高められるメリットがあります。 DVC とは? データのバージョンを管理する機能をもつオープンソースソフトウェアです。データのハッシュをテキストファイルで保持し git でバージョン管理します。また、yaml ファイルで実行パイプラインを定義して監視対象データが更新された際にハッシュを更新することで、新しいハッシュ値を含んだデータをバージョン管理します。更新されたデータファイルはキャッシュディレクトリに保存され、必要なタイミングで自動的に復元されます。 データのリモートリポジトリを定義することで、データ一式を簡単なコマンド操作で S3 等へ push / pull すること
◆ Live配信スケジュール ◆ サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。 ⇒ 詳細スケジュールはこちらから ⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください 【4/18開催】VSCode Dev Containersで楽々開発環境構築祭り〜Python/Reactなどなど〜 Visual Studio Codeの拡張機能であるDev Containersを使ってReactとかPythonとかSpring Bootとかの開発環境をラクチンで構築する方法を紹介するイベントです。 https://tech-lab.connpass.com/event/311864/ 今回は、Gitをチームで運用していく際におざなりにされがちなことについて書いています。一週間前におざなりにして注意を受けたの
Metaが10年間にわたり開発・使用してきたソースコード管理システム「Sapling」がオープンソース化されました。Git互換で基本的なコマンドは類似しており、すべてのコマンドがシンプルで使いやすいように設計されているとのこと。Saplingは2022年11月15日から一般向けに公開されています。 Sapling: Source control that’s user-friendly and scalable https://engineering.fb.com/2022/11/15/open-source/sapling-source-control-scalable/ MetaはSaplingについて「ユーザビリティとスケーラビリティを重視した、Metaで使用されているソース管理システム」と紹介。GitやMercurialのユーザーにとって基本的な概念の多くがなじみのあるものであり、
Git 2.38がリリースされました。 このバージョンから大規模Gitリポジトリの操作を高速化するscalarが同梱されるようになりました。 今回はこのscalarによって、どれぐらいGitの操作が高速化されるのかを簡単に検証します。 結論から言うとgit statusが約43秒かかっていたのが約1秒で操作できるようになります。 Install Git 2.38Git 2.38からscalarが同梱されましたので、各自の環境にあわせてInstallなりVersionUpなりをしてください。 $ git --version git version 2.38.0 Before大規模Gitリポジトリとしてchromiumを利用しました。 普通にgit cloneしてきて、git statusを実施すると約37秒かかります。 ❯ time git status On branch main You
筆者はよく次のような質問を受ける。「プログラミングプロジェクトで使う分散型バージョン管理システム(VCS)は、『GitHub』と『GitLab』のどちらがよいのか」 まず、社内プログラムを構築するだけの場合は、自社サーバー上で単独で使用できるローカルGitインスタンスがあれば十分だ。Gitは自社サーバーやクラウド上で集中型のVCSとして使用することもできる。VCSを自分で構築できるなら、VCSサービスのサブスクリプションは必要ない。このモデルでは、世界中に散在するチームやパートナーとともにプロジェクトを簡単に運営することができる。 しかし、ホスト型Gitサービスのさまざまな付加機能が必要な人もいるだろう。本記事では、ソフトウェアサービスの違いから、インターフェースと中核的な価値の類似点までを詳しく解説する。 主な違いは、GitLabに継続的インテグレーション/継続的デリバリー(CI/CD)
私がこれまでGitの研修講師やブランチ戦略のコンサルティングをおこなってきた経験に基づいて、この記事を書きます。 Gitのワークフローについては自転車置き場の議論になりがちであまり乗り気がしないのですが、最近少し発見があったのと、実際に多くの現場で明らかにフィットしないのに git-flow を検討したり採用したりしようとして苦労をしている様を目撃することが多いので書くことにしました。 この記事で主張する内容はタイトルの通りですが、まず前提として以下を宣言しておきます: 全てのケースに100%フィットするようなワークフローは存在しない git-flowがフィットするケースも探せばあるかもしれない 例えばすでに何年もgit-flowでうまく回せてるよ、など どのようなワークフローを採用するかは最終的にはあなた(のチーム)が判断すべき さて、 git-flow は 2010年1月「A succ
BIGLOBEの開発現場の様子や、developブランチにrebaseで綺麗なコミット履歴を作る方法をご紹介します。 はじめまして! GitHubを中心に仕事がまわる開発現場 Git logが綺麗だとバグが起こりにくい? developブランチを綺麗に保つGit操作(マージ編) 1. そのまま気にせずdevelopにマージする。 2. 最新のdevelopをfeature/Bブランチに取り込んでからdevelopにマージする 3. 最新のdevelopにrebaseしてからマージする リベース コワクナイョ 最後に はじめまして! 基盤本部(開発部門)の江角です。 2021年8月にSIerからBIGLOBEに転職し、半年が経過しました。 転職期間中はもちろんコロナ禍で、カジュアル面談も面接も全てオンラインでした(多分今もそうだと思います)。 入社日当日は出社しましたが、入社してから半年の
ここ最近、何やらデータベースの相談をされることが何やら多くなってきたmasamikiです。 今、とあるプロダクトの開発をしようと、要件まとめたり設計したりたりしてるのですが、この仕組みをやるためには…version管理いるなぁ…gitが欲しいなぁ……となってます。 そして、調べてみたところ、2年も前のものですがこんな記事を見つけました。 「DoltとDoltHubが我々の結論だ」とおっしゃってます。 Doltとは Doltは、Gitリポジトリと同じように、フォーク、クローン作成、ブランチ、マージ、プッシュ、プルできる最初で唯一のSQLデータベースです。(← by Google翻訳) おぉ、まさしく、そのままんま、これだ。 他にも、GitRows とかも使えそうかな…と思ってみていたものの、どうやら今の要件にあうのあはDoltっぽそう。 上記事だと、他にもdata.world(Microso
これは、フィヨルドブートキャンプ Advent Calendar 2021(Part 1) 13日目の記事です。 未経験からフィヨルドブートキャンプでプログラミングを勉強し、2021年3月から Tebiki 社でエンジニアとして働いている masuyama13 です。 入社当初、PR(プルリクエスト)を作成する際にコミットの整理に毎回かなり時間がかかるのが悩みでした。試行錯誤の結果、この悩みを解消することができたので紹介します。 それが、コードより先にコミットメッセージを書くという方法です。 コミットメッセージを先に書くやり方まず、タスクを分解して TODO リストを作ります。これから作業する内容がイメージできたら、コミットメッセージを一つ考えます。エディタなどにコミットメッセージを入力します。コミットメッセージが書けたら、それを常に意識しながらコーディングを進めます。作業中にコミットメッ
月間10万人が読んでいるCoral Insightsのニュースレターにご登録いただくと、Coral Capitalメンバーによる国内外のスタートアップ業界の最新動向に関するブログや、特別イベントの情報等について、定期的にお送りさせていただきます。ぜひ、ご登録ください! ウクライナのソフトウェア開発者Dmitry Zaporozhets氏が2011年10月に、たった1人で開始したオープンソースプロジェクト「GitLab」。それが、ちょうど10年を経て時価総額1兆円もうかがうほどの大成功したDevOpsのSaaSプラットフォームへと進化することになると想像した人は、ほとんどいなかったと思います。GitLabのライセンス・SaaSビジネスを展開するGitLab Inc.は9月17日付けで米国証券取引委員会(SEC)に対してFORM S-1を提出し、IPOへ向けて最終段階に入りました。 開発初期か
Git 2.9以降はcore.hooksPathというオプションでグローバルまたはローカルのGitフックのディレクトリを指定できるようになっています。 Gitのcore.hooksPathオプションを利用するとhusky、simple-git-hooksのような追加の依存がなくても、Gitの機能だけでGitフックのコードをバージョン管理して、プロジェクトのセットアップ時にプロジェクトごとのGitフックを設定できます。 📝 類似するGitフックを管理するツールとしてpre-commitやLefthookもあります。これらのツールはGitフックの管理だけではなく、ファイルの種類ごとに実行するコマンドをわけて書けるようになっています。 つまり、lint-stagedのような機能も含むので、この記事で紹介するアプローチ以上の機能も同梱されています。 Node.jsプロジェクトの例 ここでは具体例
これは何 僕は開発作業をしているとき、PRをあげるまでの開発途中はwipコミットに変更を記録していき、最後にコミットを仕上げていくような作業をよくします。 初めからコミットを綺麗に書きながら開発ができれば良いのですが、 にあるようなコミットログを仕上げていこうと思うとどうしても最後にコミットログを整理したくなります。 この記事はこのようにgitを使うと綺麗なコミットログを作れるよ、というTipsです。 具体的にこういうコミットを作ると良いよ、みたいな話はこの記事ではしません。 僕はこのような工程でPRを出す前にコミットログを作っています。 git rebase -iで作業中のコミットを全て一つのコミットにsquashする git reset HEAD~で一度コミットを取り消す git add -pで作りたいコミットごとに変更をstageにあげていく コミットを作成する git rebase
個人用メモです。 「git gcってあんまし容量減らないよなぁ」 と思ったのが動機です。調べたけどパッと腑に落ちる記事がなかったので「自分で git のソースコード見た方がいいな」と急にモチベ発動してグワっと勉強しました。またついでに歴史改変の方法も調べたのですが、公式で既に WARNING が出てるほど非推奨化されてるfilter-branchを使用してる記事が多かったので、2021 年現在で多分一番推奨されてるfilter-repoを使ってやる方法もまとめました。 ちなみに容量減らしても高速化するかというとそこまで単純ではないです。そもそも減らさなくても partial clone で blob オブジェクトを必要最低限に指定して昔の blob をデフォルトで持ってこないようにしたり(--no-checkoutと併用するとより効果有る)、その後本当に自分が必要なやつだけ sparse-
Oh My Git! は、バージョン管理ツール git の使い方を学ぶためのゲームです。 中央にgitツリーのグラフが表示され、手元にはgitコマンドを表すカードが配られます。 カードを使わずに右側のターミナルでコマンドライン操作することも可能。お題で出てきた課題を満たすためのカード/コマンドを正しく実行すると、右側の達成項目が緑に反転し、すべて達成すればそのレベルはクリアです。 commit を指定し、そこにカードを捨てることでカード上のコマンドを適用。 levels にあるステージ一覧から、好きな項目について遊ぶことが可能です。 カードを使っても解けますが、コマンドラインで解くと右端のボックスを黄色にすることができます。 ソースコードは GitHub で公開されていて、バイナリ版も Windows, MacOS, Linux 向けに提供されています。 テキストファイルで新たなlevel
GitHub みたいなサービスを今一から作るならどの言語・フレームワークを使うか GitHub の次は何かを考えてみるのは、現実に実現困難なのを忘れれば、なかなかに楽しいことではあります。ここではその妄想をやっていきましょう。 GitHub の抱える課題を分割すると、Git の問題と、 GitHub の提供する機能の問題に分けられると思います。自分は、Git をベースとして GitHub に勝つのは現代ではなかなか難しいと考えています。MS による買収と実際に注ぎ込まれてる資本を考えると、よほど斬新な切り口でないと、 同じ Git を使っても優位性は出せません。 なので、 GitHub に本質的に勝つには、その基幹となる VCS から考え直すとよいのではないか、と考えています。幸いなことに(?)、Git はその優秀さは認められていますが、学習の困難さや特定のユースケースで機能しないことが知
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く