これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド git-ftp です。
プログラム:
NAME
Git-ftp - シェル スクリプトとして記述された Git を利用した FTP クライアント。
SYNOPSIS
git-ftp [アクション] [オプション] [URL]...
DESCRIPTION
このマニュアル ページでは、git-ftp プログラムについて簡単に説明します。
Git-ftp は、Git を使用してどのローカル ファイルをアップロードするか、またはどのファイルをアップロードするかを決定する FTP クライアントです。
リモートホスト上で削除する必要があります。
.git-ftp.log ファイルに SHA1 ハッシュをアップロードすることで、デプロイされた状態を保存します。 がある
Git は必要ありません (http://git-scm.org) リモートホストにインストールされます。
異なるブランチを使用した場合でも、git-ftp はどのファイルが異なるかを認識します。
それらのファイルを処理します。 通常の FTP クライアントはこれを行うことができないため、時間と帯域幅を節約できます。
もう XNUMX つの利点は、Git-ftp は Git で追跡されるファイルのみを処理できることです (http://git-
scm.org)。
ACTIONS
INIT リモートホストへの最初のアップロードを初期化します。
プッシュ 前回のアップロード以降に変更されたファイルをアップロードします。
追いつく
.git-ftp.log ファイルのみをアップロードします。 ファイルはすでにリモートにアップロードされています
別のプログラムをホストしており、その状態をアップロードしてその状態を記憶したい
.git-ftp.log ファイル。
表示する 最後にアップロードされた SHA1 をログからダウンロードし、`git show` をフックします。
ログ 最後にアップロードされた SHA1 をログからダウンロードし、`git log` をフックします。
スコープの追加
新しいスコープ (dev、production、testing、foobar など) を作成します。 これはラッパーです
git-config を介したアクション。 見る スコープ 詳細については、セクションを参照してください。
スコープの削除
スコープを削除します。
助けます 使用方法のヘルプを印刷します。
OPTIONS
-u [ユーザー名]、 - ユーザー [ユーザー名]
FTP ログイン名。 引数が指定されていない場合は、ローカル ユーザーが取得されます。
-p [パスワード]、 --パスワード [パスワード]
FTPパスワード。 引数が指定されていない場合は、パスワードのプロンプトが表示されます。
-k [[ユーザーアカウント]]、 --キーチェーン [[ユーザーアカウント]]
KeyChain からの FTP パスワード (Mac OS X のみ)。
-a、 - すべて
現在の Git チェックアウトのすべてのファイルをアップロードします。
-NS、 - アクティブ
FTPアクティブモードを使用します。
-s [範囲]、 - 範囲 [範囲]
スコープの使用 (例: dev、production、testing、foobar)。 見る 範囲 & デフォルト
詳細については、セクションを参照してください。
-l、 - ロック
リモートロックを有効にします。
-NS、 -ドライラン
何もアップロードまたは削除しませんが、.git-ftp.log ファイルを取得しようとします。
リモートホスト。
-NS、 - 力
何も質問しません、ただ質問するだけです。
-NS、 - 静けさ
静かに。
-NS、 - 助けて
いくつかの使用法情報を出力します。
-v、 -詳細
冗長になります。
-vv できるだけ冗長にします。 デバッグ情報に役立ちます。
--リモートルート
リモートのルートディレクトリを指定します
--syncroot
git プロジェクトのルート パスであるかのように、同期元のローカル ディレクトリを指定します。
- 鍵 SSH 秘密キーのファイル名。
--公開鍵
SSH 公開キーのファイル名。 --key オプションとともに使用されます。
-安全でない
サーバーの証明書を検証しません。
--cacert
CA 証明書ストアとして使用します。 サーバーが自己署名を持っている場合に便利です
証明書。
--無効-epsv
パッシブ FTP 転送を実行するときに EPSV コマンドの使用を無効にするようにcurlに指示します。
Curl は通常、常に最初に PASV の前に EPSV の使用を試みますが、これでは
オプションを指定すると、EPSV の使用は試行されません。
- バージョン
版画版。
URL
URL のスキームは予想どおりです
プロトコル://ホスト.ドメイン.tld:ポート/パス
フル機能の URL の下に、 host.example.com ポート上 2121 パスへ 私の進路 プロトコルを使用して
FTP:
ftp://host.example.com:2121/マイパス
ただし、FTP だけではありません。 サポートされているプロトコルは次のとおりです。
ftp://...
FTP (プロトコルが設定されていない場合のデフォルト)
sftp://...
SFTP
ftps://...
FTPS
ftpes://...
FTP over Explicit SSL (FTPES) プロトコル
デフォルト
同じことを繰り返さないでください。 .git/config での git-ftp のデフォルトの設定
$ git config git-ftp.<(url|ユーザー|パスワード|syncroot|cacert)>
誰もが例を好みます。
$ git config git-ftp.user ジョン
$ git config git-ftp.url ftp.example.com
$ git config git-ftp.password secr3t
$ git config git-ftp.syncroot パス/ディレクトリ
$ git config git-ftp.cacert caCertStore
$ git config git-ftp.deployedsha1file mySHA1File
$ git config git-ftp.insecure 1
$ git config git-ftp.key 〜/ .ssh / id_rsa
これらのデフォルトを設定した後、次のボタンを押します。 [メール保護] と同じくらい簡単です
$ git ftp プッシュ
スコープ
システムまたは環境ごとに異なるデフォルトが必要ですか? いわゆるスコープ機能を使用します。
マルチ環境開発を使用する場合に便利です。 開発、テスト、
本番環境。
$ git config git-ftp. .<(url|ユーザー|パスワード|syncroot|cacert)>
したがって、以下の場合は、テスト スコープと運用スコープを設定します。
ここではスコープ「testing」のパラメータを設定します。
$ git config git-ftp.testing.url ftp.testing.com:8080/foobar-path
$ git config git-ftp.testing.password simp3l
ここではスコープ「production」のパラメータを設定します。
$ git config git-ftp.production.user manager
$ git config git-ftp.production.url live.example.com
$ git config git-ftp.production.password n0tThatSimp3l
スコープへのプッシュ テスト alias [メール保護]:8080/foobar-path パスワードを使用する simple3l
$ git ftp Push -s テスト
注: 範囲 機能は、 デフォルト 特徴。 設定していないので、
このスコープのユーザー、git-ftp は使用します ジョン 前に設定したユーザーとして デフォルト.
スコープへのプッシュ 製造 alias [メール保護] パスワードを使用する n0tThatSimp3l
$ git ftp Push -s プロダクション
ヒント: スコープ名がブランチ名と同じ場合。 スコープをスキップできます
引数、たとえば現在のブランチが「production」の場合:
$ git ftp プッシュ -s
add-scope アクションを使用してスコープを作成することもできます。 すべての設定は
URL。 ここで作成するのは、 製造 add-scope を使用したスコープ
$ git ftp add-scope プロダクション ftp://マネージャー:[メール保護]/foobar-パス
スコープの削除は、remove-scope アクションを使用すると簡単です。
$ git ftp 削除スコープの制作
無視する ファイル に BE SYNCED
無視されるようにファイル名を .git-ftp-ignore に追加します。
ディレクトリ構成内のすべてを無視します。
config/.*
./ 内の拡張子 .txt を持つすべてのファイルを無視します。
。*\。TXT
これは a.txt と b.txt を無視しますが、dir/c.txt は無視します
foobar.txt という単一のファイルを無視します。
foobar\.txt
同期 追跡されていない ファイル
ペアの追跡されたファイルが変更されたときに、追跡されていないファイルをアップロードするには (例: コンパイルされたファイルのアップロード)
CSS ファイルのソース SCSS または LESS ファイルが変更された場合)、ファイル ペアを .git-ftp-include に追加します。
css/style.css:scss/style.scss
複数のソース ファイルが XNUMX つの追跡されていないファイルに結合されている場合、次のことができます。
追跡されていないファイルと複数の追跡されたファイルを XNUMX 行に XNUMX つずつペアリングします。 これにより、
いずれかのコンポーネント追跡ファイルがある場合、結合された追跡されていないファイルは適切にアップロードされます。
変更:
css/style.css:scss/style.scss
css/style.css:scss/mixins.scss
NETRC
バックエンドでは、Git-ftp はcurlを使用します。 これはつまり 〜/ .netrc 他のものと並べて使用できます
認証する Git-ftp のオプション。
$エディター 〜/ .netrc
マシン ftp.example.com
ログイン ジョン
パスワードシークレット
EXIT コード
さまざまなエラー コードとそれに対応するエラー メッセージが多数あります。
悪条件のときに出現します。 この記事の執筆時点では、終了コードは次のとおりです。
1 不明なエラー
2 間違った使用法
3 引数が欠落しています
4 アップロード中にエラーが発生しました
5 ダウンロード中のエラー
6 不明なプロトコル
7 リモートロック済み
8 Git プロジェクトではありません
KNOWN 問題 & バグ
上流の BTS は次の場所にあります。 。
作者
ルネ・モーザー[メール保護]>.
onworks.net サービスを使用してオンラインで git-ftp を使用する