学习笔记
创建新的仓库
1.# 初始化一个新的 Git 仓库
初始化仓库: git init
初始化的仓库会生成一个.git文件表示这个文件被git管理
.# 将文件添加到暂存区:git add <文件名>
.# 提交暂存区中的文件到本地仓库 :git commit -m "提交信息"
.#将本地分支 main 重命名为 main与远远程仓库保持一致 :git branch -M main
.#将本地仓库与远程仓库绑定:git remote add origin <远程仓库地址>
.#提交到仓库 < master是默认分支 >: git push -u origin <分支名>
.推送现有仓库
.已有仓库只需执行这3步即可
.#将本地分支 main 重命名为 main与远远程仓库保持一致 :git branch -M main
.#将本地仓库与远程仓库绑定:git remote add origin <远程仓库地址>
.#提交到仓库 < master是默认分支 >: git push -u origin <分支名>
回滚历史版本
回滚历史版本:git reset --hard<版本ID>
复制对应的版本ID
回滚历史版本注意事项
当你执行回滚完之后你本地的版本会比远程仓库的版本低,会出现提交不上去的问题。
当你出现提交不上去执行 :git push -f origin <分支名> 强制推送
强制推送会有丢失数据的风险(需要提前备份数据)
强制推送会重写远程分支的历史。如果其他协作者已经基于当前的远程分支进行了提交,这些提交可能会被永久丢弃,导致工作丢失
。
Git命令
#用于从远程仓库克隆整个仓库到本地: git clone <远程仓库地址>
#回滚历史版本:git reset --hard <版本ID>
#回退版本之后强制推送 :(慎用)使用之前最好代码备份 因为他的历史版本都会没有:git push -f origin master
# 从远程仓库拉取更新到本地仓库:git pull <远程仓库名> <远程分支名>
# 查看当前 Git 仓库的状态:git status
# 查看提交历史记录:git log
# 创建一个新的分支:git branch <分支名>
# 切换到指定分支: git checkout <分支名>
# 创建一个新的分支并切换到该分支:git checkout -b <新分支名>
# 合并指定分支到当前分支: git merge <分支名>
# 将本地仓库与远程仓库关联:git remote add <远程仓库名> <远程仓库URL>
# 将本地分支推送到远程仓库:git push -u <远程仓库名> <本地分支名>
# 从远程仓库克隆整个仓库到本地: git clone <远程仓库URL>
# 查看远程仓库信息: git remote -v
# 查看远程分支信息: git branch -r
# 删除本地分支:git branch -d <分支名>
# 删除远程分支:git push <远程仓库名> --delete <远程分支名>
# 撤销工作区的更改(未暂存):git checkout -- <文件名>
# 将暂存区中指定文件的修改撤销,重新放回工作区,但不改变工作区文件的内容:git git reset HEAD <文件名>
# 将最近的一次提交回退,但保留所有修改在暂存区,并将这些修改保留在工作区:git git reset --soft HEAD^
# 将最近的一次提交回退,同时撤销暂存区的修改,但保留这些修改在工作区:git reset --mixed HEAD^
# 将最近的一次提交回退,并且将暂存区和工作区的所有修改都撤销,恢复到上一次提交的状态: git reset --hard HEAD^
# 将当前分支回退到指定的提交,同时将暂存区和工作区的所有修改都撤销,恢复到指定提交的状态:git reset --hard <commit ID>
用于切换分支或者恢复文件: git checkout
git checkout <分支名>:切换到指定分支
git checkout -- <文件名>:撤销对工作区文件的修改,恢复到最近一次提交的状态、
git branch: 用于列出、创建、删除或重命名分支
git branch:列出所有分支
git branch <新分支名>:创建新分支
git branch -d <分支名>:删除指定分支
git merge :用于将一个分支的修改合并到当前分支
git merge <要合并的分支名>:将指定分支的修改合并到当前分支
git stash :用于将工作区中的临时修改保存起来,以便稍后恢复
git stash :保存工作区的临时修改
git stash pop :恢复最近一次保存的临时修改并删除stash
git stash list :列出所有保存的stash
git log: 用于查看提交历史记录
git log:列出提交历史记录
git log --oneline:以单行的形式列出提交历史记录
git log --graph:以图形化的方式展示提交历史记录
这些是一些常
用于查看文件之间的差异
git diff:查看工作区和暂存区之间的差异
git diff <commit1> <commit2>:查看两个提交之间的差异