Git は日常の開発で頻繁に使用されますが、それでも忘れてしまったり、奇妙な問題に遭遇したりすることがあります。この記録を自分自身に思い出させるために使用してください~随時更新~
記事ディレクトリ
1. 新しい環境の最初のクローン
リポジトリとそのモジュールのクローンを初めて作成する
git clone --recursive [仓库URL]
ウェアハウスが初めてモジュールをプルする
git submodule update --init --recursive
サブモジュールを更新する
git submodule update --recursive --remote
2. ローカルでの変更を保持しますか?
変更内容を保存
git stash #封存修改
git pull origin master
git stash pop #把修改还原
変更を破棄 == ロールバック
git reset --hard
git pull origin master
3. コードを送信する
現在のディレクトリ内のすべてのファイルをステージング領域に追加します
git add .
ステージングエリアをローカルの倉庫に送信します
git commit -m "本次提交代码概要简述"
プロジェクトの現在のステータスを確認する
git status
dev ブランチのコンテンツをローカルにプルします
git pull origin dev
プッシュコード
git push
4. 隠しバックアップ
現在のワークスペースのコンテンツをバックアップし、最新の送信から関連するコンテンツを読み取り、ワークスペースが最後の送信のコンテンツと一貫していることを確認します。同時に、現在のワークスペースのコンテンツを Git スタックに保存します
git stash
サーバー上の現在のブランチコードをプルします
git pull
Git スタックから最近保存されたコンテンツを読み取り、ワークスペース関連のコンテンツを復元します。同時に、ユーザーは複数のスタッシュ操作を実行する可能性があり、最後のスタッシュが最初にフェッチされるようにする必要があるため、スタック (先入れ後出) を使用して管理します。ポップはコンテンツを最上位に取ります。スタックを削除して復元します。
git stash pop
Git スタック内のすべてのバックアップを表示します。このリストを使用して、どこから復元するかを決定できます。
git stash list
Gitスタックをクリアする
git stash clear
5. ユーザーの表示と切り替え
ユーザー名、Github アカウント名を表示する
git config user.name
メールボックスを確認してください
git config user.email
ユーザーを切り替える
git config --global user.name “xxx”
メールボックスを切り替える
git config --global user.email “xxx”
6. ミラーを作成して新しいウェアハウスに切り替える
イメージとしてクローンを作成する
git clone --mirror [仓库URL]
ミラーフォルダーに移動します
cd [repo folder]
関連付けられたオリジンリモートライブラリを削除します
git remote rm origin
新しいウェアハウスを作成した後、それを新しいリモートウェアハウスのアドレスに更新します
git remote add origin [新的URL]
プッシュイメージ
git push origin --all或git push origin --mirror
プッシュタグ
git push --tags
gitlab 上のプロジェクトのブランチとタグが元のものと一致していることを確認し、
ローカル バックアップが完了したことを確認したら、ローカルの冗長リモート ブランチをクリーンアップできます。
git fetch -p
7. デフォルトのブランチを変更する
(1) GitLab 上で新しいプロジェクトを作成した後、プロジェクトに入り、左側の Repository -> Branches をクリックします。
保護されたデフォルト ブランチ main が 1 つだけあり、ここでは削除できないことがわかります。
次に、新しいブランチ マスターを作成します。右上隅の [新しいブランチ] をクリックし、ブランチ名マスターを入力して、ブランチを作成します。
(2) 左側の「設定」→「リポジトリ」をクリックします。
[デフォルト ブランチ] をクリックし、マスターとしてのデフォルト ブランチを選択して、変更を保存します。
この時点では、デフォルトのブランチは master です。
(3) このとき、(1)の設定に戻ってブランチメインを削除することもできます。
Ps.問題は解決しました
「ort」戦略によって行われたマージ。
コミット レコードを確認し、リモート ローカル競合が発生する前のコミットを見つけます。
「Q」を押して git ログ状態を終了できます。
git log
cominID に基づいて決定される特定のバージョンにロールバックします。コミット情報のみがロールバックされました
git reset --soft [commitID]
git pull
致命的: パスを使用してソフト リセットを実行できません。
HEAD、インデックス、作業コピーが同時にリセット先のコミットにリセットされます。実行すると、ローカルでの変更が失われる可能性があります。
git reset --hard
git リセットの回復 — 重大な誤操作
返される commitId を見つけます
git reflog
そして再度実行します
git reset —hard commitId
参考:
https://www.mimastech.com/2017/11/19/how-to-movemigrate-a-full-git-repository-from-github-to-gitlab-self-hosted-instance/
https://qa.1r1g.com/sf/ask/480571171/
https://blog.csdn.net/csdnlijingran/article/details/96425712