私はXubuntuを使用しており、apt
パッケージを使用して更新できることがわかりましたapt-get
。しかし、プログラマーは通常、git
プロジェクトのさまざまなバージョンを管理するためにそれを使用していると聞きました。それでは、Xubuntuはなぜgit
他のバージョンのソフトウェアを処理するためにそれを使用しないのですか?
答え1
apt
とapt-get
関連があり、非常に異なりますgit
。
適切パッケージ管理DebianベースのLinuxディストリビューション用のツール(Ubuntu / Xubuntuを含む)使用しているLinuxディストリビューションを構成するバイナリパッケージを管理(ダウンロード、インストール、削除、更新など)するために使用されます。これは、ローカルシステムソフトウェアの更新とプログラムの追加と削除に関するものです。
"apt"は、Synapticグラフィックツールと対話するためのコマンドラインツールです。本質的に、これらは同じことを行います。ただし、1つはグラフィックで、X-Windowシステム内で実行され、もう1つはLinuxコマンドラインで実行されます。
apt-get
コンピュータにソフトウェアパッケージをインストールまたは更新するために最も一般的に使用されるコマンド。apt
それほど一般的ではなく、apt-get
出力形式の点でほとんどのものとは異なります。コマンド間の違いの詳細を提供するマニュアルページを使用または呼び出すman apt
ことができます。man apt-get
Synapticとaptの使い方に関する詳細情報を提供できるオンラインページもたくさんあります。
git
一方、ソフトウェア開発ソースコードのバージョン管理システムです。繰り返しますが、これを使用してman git
より多くの情報を取得できます(gitがシステムにインストールされている場合)。しかし、Xubuntuがあり、ソフトウェア開発に直接参加していない場合は、Gitについて心配する必要はないと思います。
答え2
したがって、apt
およびapt-get
は、ほとんどのDebianおよびDebianベースのLinuxディストリビューションで利用可能なパッケージ管理ツールです。APT
Advanced Package Toolの略で、パッケージを管理するために設計されたパッケージ管理ツールです.deb
。これは記事です違いを確認できます。私もあなたが読んでお勧めしますDebian Wikiパッケージ管理について
本質的に、apt-get
「前」とapt
「最新」の両方は基本的に同じことを行います。つまり、Debian インストールからすべてのパッケージをダウンロード、インストール、アップデート、アップグレード、管理することです。いくつかの極端なケースを除いて、交換が可能です。
Git
スペクトルの反対側にはソフトウェアバージョンコントロールシステムがあります。これは良いウェブサイトです。学習開始git
。開発者とエンドユーザーがgit
作業しているプロジェクトのバージョンを制御するために使用されます。これを使用して、git
Word文書、ビデオ、写真、ソースコードなどへの変更を追跡できます。
これは、システムのソフトウェアを管理および制御するための別のツールです。一部のアプリケーションはオペレーティングシステムのリポジトリで使用できないため、開発者はオペレーティングシステムgit
のパッケージマネージャが参照する標準リポジトリの代わりにリポジトリにバージョンをデプロイすることを選択できます。この場合、git
ソフトウェアをダウンロードし、開発者が提供した指示に従ってインストールを完了できます。
使用はgit
より受動的なプロセスです。apt
または、apt-get
1つまたは2つのコマンドを使用して、すべてのパッケージのアップデート(ソフトウェア、ファームウェア、カーネルアップデート、セキュリティパッチなど)を自動的にダウンロードしてインストールできます。git
ソフトウェアの新しいバージョンを直接確認し、必要なすべてのインストール手順をダウンロードして完了する必要があります。ツールを使用するのとは異なり、インストールするAPT
各個々のソフトウェアに対してこれを行う必要がありますgit
。
答え3
apt
コンピューティングの依存関係。パッケージXを要求すると、apt
パッケージXとそのパッケージが依存するすべてのパッケージがインストールされます。 (または他の場合は他のパッケージを削除してください)。パッケージファイルを解凍し、インストールスクリプトを順番に実行します。
git
(ソースコード)ファイルセットをインポートまたはプッシュできます。依存関係を追跡しません。ソースファイルの現在のバージョンだけでなく、git
ファイルセットの変更履歴も追跡します。
どちらもかなり複雑です。また、さまざまな長所と短所がありますが、それぞれの目的に合わせて特化されています。 2つの動作方法や用途が重なる部分はあまりありません。
たとえば、それらは異なるネットワークとセキュリティプロトコルを使用する傾向があります。
すべてではありませんが、多くのgit
ダウンロードが次のように行われます。HTTPS(TLS経由のHTTP)。オンラインショッピングなどを保護するために作成されたのと同じグローバルWeb認証機関(CA)を活用して、接続のハイジャックを防ぎます。
接続ハイジャックは、インターネット上で非常に簡単で一般的です。私たちは常にこれを防ぐ必要があります。接続のハイジャッキングは、接続されている悪意のあるWi-Fiルーター、インターネットアクセスプロバイダ、インターネットバックボーンルーター間の回線にアクセスする人などによって行われます。
すべてではありませんが、ほとんどのapt
ダウンロードは通常のHTTP経由で行われます。 apt
ダウンロードしたファイルを確認するには、さまざまな方法を使用してください。リポジトリ全体にGPG署名ファイルを使用し、apt
使用可能なファイルのチェックサムのリストを確認します。バラよりセキュリティアプリケーション。
たとえば、SecureAptは、サーバーが各ファイル転送を個別に暗号化する必要がないため、歴史的にTLSよりも安価でした。もう1つの機能例は、apt
リポジトリの最良のローカル「ミラー」サーバーからダウンロードする機能です。ミラーがしなければならないのは、同じファイルをコピーすることだけです。さまざまな組織がミラーサーバーをパブリックサービスとして提供しています。ただし、ミラーサーバーがハイジャックされると、誤った更新を提供できません。検証済み文書は、その文書を保持している組織でのみ作成できます。秘密GPGキーペアの半分です。
より近代的な技術を使用してSecureAptを改善する余地があるかもしれません。たとえば、SecureAptには、国家の権力が秘密に分散ソフトウェアにバックドアを強制するのを防ぐための「更新の透明性」(証明書の透明性に類似)と同等の機能はありません。それにもかかわらず、SecureAptの機能はその目的に非常に適しています。
たとえば、Debianapt
リポジトリは大規模な組織で作成されますが、多くの人は Git を使用して多くの独立プロジェクトのソースコードと履歴を調べたいと思います。 HTTPSを再利用すること(つまり、認証にWeb認証局を使用すること)は、トランスポートにgit
保護を追加するための非常に便利な方法です。