ローカルgitリポジトリからリモートgitリポジトリへの移行

以下の説明の便宜上、移行するgitウェアハウスをローカルウェアハウス、リモートgitウェアハウスをリモートウェアハウスと呼びます。提出記録を保持する必要がある場合、以下は移行手順です。

1.空のリモートウェアハウスを作成する

1.1。GitLabウェブページで作成

作成が完了すると、gitアドレスを取得します。http://10.69.12.11/android/hello.git

1.2。GitLabまたはGitHubが提供するAPIを使用して作成する

APIを最も簡単な方法で使用するために、〜/ .bashrc構成ファイルにシェルスクリプトを記述して完了します。

~$ vim ~/.bashrc

.bashrcの最後に次のコンテンツを追加します。

  • GitLabバージョン:
repo_create(){
		# 判断是否存在参数,有,则赋给repo_name变量,否则使用当前目录作为repo_name的值
        if [ $1 ];then
                repo_name=$1
        else
                repo_name=`basename $(pwd)`
                echo "set Repo Name to ${repo_name}"
        fi
        # 使用GitLab Api创建远程仓库
        # oExkVZEW2WKDcoF6mXdW是Personal access tokens,在gitlab web上创建
        # name=${repo_name}是指定仓库的名称
        # namespace_id=12是group id可以在gitlab上查到
        # http://10.69.12.11/api/v4/projects,则是GitLab服务器的地址,及api
        curl -k --request POST --header "PRIVATE-TOKEN:oExkVZEW2WKDcoF6mXdW" --data "name=${repo_name}&namespace_id=12" http://10.69.12.11/api/v4/projects
}
  • GitHubバージョン:
repo_create(){
		# 判断是否存在参数,有,则赋给repo_name变量,否则使用当前目录作为repo_name的值
        if [ $1 ];then
                repo_name=$1
        else
                repo_name=`basename $(pwd)`
                echo "set Repo Name to ${repo_name}"
        fi
        # 使用GitHub Api创建远程仓库
        # 8ad7a0e3faaa7574c4c1f38b5280c7d9ecf980ab是Personal access tokens,在GitHub上创建
        # '{"name":"'${repo_name}'"}'是指定仓库的名称
        curl -u '[email protected]:8ad7a0e3faaa7574c4c1f38b5280c7d9ecf980ab' https://api.github.com/user/repos -d '{"name":"'${repo_name}'"}'
}

sourceコマンドを実行して、構成ファイルを使用して有効にします。

~$ source ~/.bashrc

repo_createを使用してリモートウェアハウスを作成します。

~$ repo_create Hello

作成に成功すると、http://10.69.12.11/android/hello.gitに戻ります。
GitLab APIリファレンスhttps://docs.gitlab.com/ce/api/

2.元々ローカルウェアハウスに関連付けられていたリモートウェアハウスを削除する

~/local_project$ git remote rm origin

3.ローカル倉庫を新しいリモート倉庫に関連付けます

~/local_project$ git remote add origin http://10.69.12.11/android/hello.git

:ポイント2の操作が実行されない場合、次のエラーが報告されます。

致命的:リモートの起点はすでに存在しています。

4.送信するキャッシュにローカル倉庫のコードを送信します

~/local_project$ git add .

5.メモを書く(オプション)

~/local_project$ git commit -m "迁移Local_project项目到远程hello仓库"

6.履歴をマージします(リモートウェアハウスが作成および初期化されると、git init操作が実行されます。この手順を実行する必要があります。それ以外の場合はスキップしてください。

6.1。マージするブランチを指定

~/local_project$ git branch --set-upstream-to=origin/master master

注:上記は、ローカルマスターブランチをリモートオリジン/マスターブランチとマージすることを意味します。

6.2。マージを開始

~/local_project$ git pull origin master --allow-unrelated-histories

7.コードを送信する

リモート倉庫にコードを提出する

~/local_project$ git push -u origin master

クリックしてフォロー:

ここに画像の説明を挿入

381の元の記事を公開 85を賞賛 80,000ビュー+

おすすめ

転載: blog.csdn.net/weixin_40763897/article/details/105555429