Git概述

Git的总结

结账

移动当前提交。
在切换分支时也可以使用。

git checkout コミットID

目前所处的分支用“*”来表示。

弗克·克隆

叉子

将其他用户公开的远程仓库复制到自己的账户中。

克隆

将远程存储库下载到您的个人电脑(本地)。

git clone リモートリポジトリのURL

在实际的开发现场中,通常会有多个人直接克隆一个远程存储库,而不是进行分叉操作。这是为了防止存储库不必要地分散。

合併

将分支合并。
合并通过提交来表示。

# ブランチAにブランチBを取り込む
git checkout ブランチA # マージコミットを作りたいブランチに移動
git merge ブランチB

将在本地存储库中发生的更改同步到远程存储库。

git push リモートリポジトリ名 ブランチ名

将远程仓库中发生的变更反映到本地仓库中。

git checkout プルしてきたいブランチ
git pull リモートリポジトリ名 ブランチ名

恢复原状

撤销过去的提交。
并不是删除提交本身,而是通过创建与之相反内容的新提交来撤销过去的更改。
即使期间存在其他提交,也可以进行revert操作。

git revert コミットID

重定基 jī)

把履历整理好。

merge和rebase的区别

    • merge:過去のコミットは改変されずに、マージするためだけの新しいコミットが作成される

 

    rebase:もともとのコミットが改変されてリベース先のブランチに乗っかり、履歴が一直線になる。

如果对存在于远程仓库上的分支进行rebase操作,会导致无法用常规方法进行推送,因为rebase会修改提交记录并重新创建提交,导致提交ID发生变化。

git checkout リベースしたいブランチ
git rebase リベース先のブランチ

远程追踪分支

在远程分支和本地分支之间。
它位于本地仓库中,只是将远程分支复制到本地。
只能读取。

从远程仓库获取最新状态,并更新本地仓库中的远程跟踪分支。
此用途适用于只想了解远程仓库的情况,但不想将其反映到本地分支时等情况。
仅进行fetch操作时,只会将提交下载到远程跟踪分支(origin/◯◯),本地分支不会被更新。
如果想要反映到本地分支,需要合并远程跟踪分支。

git checkout main
git featch
git merge origin/main

修剪

在本地库中删除已被远程库删除的分支。

git branch -a # リモート追跡ブランチを含めたすべてのブランチを確認する
git fetch --prune # リモートリポジトリで消えた追跡ブランチを消去する
git branch -d ブランチ名

修改最新的提交消息

如果提交信息中出现了拼写错误或其他问题,可以使用amend命令进行修正。
只要在推送之前,就可以进行修改。

git commit --amend # viが立ち上がり、直近のコミットメッセージを修正できる。

从另一个分支中仅提取特定的提交(樱花拣选)。

如果意图提交到A分支却错误地提交到B分支等情况时使用。能够将任意提交复制到当前所在的分支上。

image.png
git cherry-pick コミットID # 今いるブランチにコミットをコピー

只是将特定的提交复制到当前分支中,原始提交仍然存在。

要删除原始提交,请执行以下操作

如果想撤销错误创建的原始提交,请使用”revert”。

在提交中打标签

使用标签可以在历史记录中标记重要的节点。
– 在应用程序开发中,可以在发布时给版本号打上标签。
– 在承包开发中,可以在交付时给日期打上标签。
– 在Web开发中,可以在重新开放时打上标签。

# 新規タグを作る
git tag タグ名

# タグをリモートリポジトリに共有する
git push origin タグ名

# ローカルリポジトリのタグを削除する
git tag -d タグ名

# リモートリポジトリのタグを削除する
git push origin --delete タグ名

如果不小心直接提交到HEAD,

脱离 HEAD 状态

没有归属于任何分支的未分支提交。
在检出过去的提交并创建新的提交时可能会发生这种情况。
可以直接堆叠提交,但在下一次检出时没有标记,无法返回。

image.png
image.png
image.png
image.png

处理方法 fǎ)

当你直接提交到HEAD,并意识到现在处于分离HEAD状态时,不要慌张,可以从那里创建一个新的分支。

git checkout -b ブランチ名
广告
将在 10 秒后关闭
bannerAds