私(私のプライベートローカルサーバーから)子すべてのプロジェクトをアップロードするサーバーです。構造は次のとおりです。
myprojects
dir_project1
dir_project2
....
さて、そのフォルダ内のすべてのアイテムをアップロードする方法を知りたいです。次に、作成したいプロジェクトごとにサーバーにログインし、プロジェクトフォルダを作成し、と入力してからgit init --bare
(マイコンピュータから)アップロードする必要があります。git push
サーバーに行き(毎回)実行する各プロジェクトのフォルダを作成し、コマンドを実行せずにこれを直接実行する方法はありますかgit init --bare
?
ありがとう
ベストアンサー1
git clone <dir_project1>
まず、そのコマンドを使用してデフォルトプロジェクトを複製し、次にgit checkout -b <new_branch_name>
そのコマンドを使用して新しいブランチを作成し、そのブランチを選択した状態でレプリケートされたプロジェクトファイルで作業する必要があると思います。
選択したブランチを確認するには、git checkout
使用可能なすべてのブランチを一覧表示するこのコマンドを実行します(アスタリスクは現在作業中のブランチを示します)。
新しいブランチがチェックアウトされたら、プロジェクトディレクトリの変更を開始できます。今行ったすべての変更は、作成したばかりの分岐で行われます。これにより、マスターブランチをテストし、変更をマスターブランチにコミット/マージすると100%確信するまでマスターブランチを変更しません。 (この部分は最後に取り上げます)
何らかの方法で(ファイルを追加するか、既存のファイル/ディレクトリを変更する)ディレクトリを変更したら、このgit add <insert_file_here.txt>
コマンドを使用してこのファイルを変更したことをgitに通知します。
次に、変更をコミットしてそのブランチに永久に適用する必要があります。通常、最初のコミットの前にgit config
ユーザー名または電子メールを含む情報を使用して、これらの変更を行った人が誰であるかを示します。
前任者:git config --global user.email EMAIL
git config --global user.name “FULL NAME"
ただし、この場合はすべてローカルであり、このファイルを操作する唯一の人だと思われるので、この手順をスキップして最初のローカルコミットを実行できます。
git commit -m "project.txtファイルの最初のドラフト"
(-mは変更を説明するために使用され、実行すると表示されますgit diff <filename>
)
これで、プッシュ/プル(主にリモートリポジトリの場合)を使用する代わりに、ローカルのgit設定でこのコマンドを簡単に使用できますgit merge
。
複製されたリポジトリではマスターブランチをマージできないため、マージを試みる前にまずマスターブランチをチェックアウトする必要があります。
git checkout master
git merge dir_project1
そうしたい場合は、ローカルポイントにプッシュする方法を見つけることができます。
git push . dir_project1:master