# 仓库操作
git init
: 初始化一个新的 Git 仓库。在当前目录下创建一个.git
文件夹。git clone <repository-url>
: 克隆一个远程仓库到本地。
# 状态查看
git status
: 查看当前仓库的状态,包括工作目录和暂存区的更改。git diff
: 显示工作目录与暂存区的区别。可以加上文件名查看特定文件的差异。git log
: 查看提交日志。可以加上--oneline
参数简化输出。
# 提交操作
git add <file>
: 将文件添加到暂存区。可以用git add .
来添加当前目录下的所有文件。git commit -m "message"
: 将暂存区的内容提交到本地仓库,并附带提交信息。git commit --amend
: 修改上一次提交的信息或者添加未提交的更改。
# 分支管理
git branch
: 列出所有本地分支,当前所在的分支会被高亮显示。git branch <branch-name>
: 创建一个新的分支。git checkout <branch-name>
: 切换到指定分支。git checkout -b <branch-name>
: 创建并切换到新的分支。git merge <branch-name>
: 合并指定分支到当前分支。git rebase
:它会将一系列提交移动到一个新的基础上,改变提交的历史记录。
# 远程仓库操作
git remote -v
: 查看远程仓库的详细信息。git remote add <name> <url>
: 添加远程仓库。git push <remote> <branch>
: 推送当前分支到远程仓库。git pull
: 从远程仓库拉取最新的代码并合并到当前分支。
# 撤销操作
git reset
用来回退当前分支的 HEAD 到指定的提交。
git reset --soft <commit_hash>
: 仅回退提交历史,保留修改。
--soft
:只回退 HEAD
到指定提交,不会修改暂存区和工作区。这意味着你可以继续修改并重新提交。
git reset --hard <commit_hash>
: 完全回退提交、暂存区和工作区的更改
--hard
:彻底回退,重置 HEAD
、暂存区和工作区。所有未提交的修改和暂存区的更改都会丢失。
git revert <commit-id>
: 生成一个新提交,用来撤销指定的提交,同时保留历史记录。
# Github 创建一个新仓库
echo "# test" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main # 将默认的master分支强制改为main
git remote add origin <repository-url>
git push -u origin main # 将main分支关联并推送至远程origin