常用的Git操作命令
Git是一个开源的分布式版本控制系统,可以有效、高效地处理从小型到大型项目的版本管理。以下是一些常见的Git操作命令:
1.初始化本地仓库:
git init
2. 克隆远程仓库:
git clone <repository_url>
3. 查看当前仓库状态:
git status
4. 添加文件到暂存区:
git add <file_name>
// 添加指定文件到暂存区,(在指定文件时,可以使用通配符来匹配多个文件。常用的通配符有*和?,其中*匹配任意多个字符,?匹配一个字符。例如:提交src文件夹下的main.c文件和utils文件夹下的所有文件,可以使用以下命令:git add src/main.c utils/*)
# 或者添加所有文件
git add .
6. 撤回暂存区中的指定文件:
git restore --staged <file>
# 撤回所有文件
git restore --staged .
6. 提交暂存区的变动到本地仓库:
git commit -m "commit message"
#强制提交
git commit -m "commit message" --no-verify
# 添加对跟踪文件所做的所有更改并提交
git commit -am "commit message"
# 修改最后一次提交的commit信息
git commit --amend -m "新的commit信息"
7. 回退版本
git reset --soft <commit>: 回退到指定 commit,保留修改内容,并将这些修改放在暂存区。(常用)
git reset --mixed <commit>: 回退到指定 commit,保留修改内容,但将这些修改放在工作目录。(常用)
git reset --hard <commit>: 回退到指定 commit,删除所有修改内容,包括暂存区和工作目录中的修改。(慎用)
"git push origin --force"命令,将本地分支的更改强制推送到远程仓库
8. 将本地仓库的改动推送到远程仓库:
git push
# git push -f 强制推送到远程 这个命令的作用是将自己本地仓库的代码直接推送至仓库,完全以你的提交为准,之前其他人的提交都会被覆盖(谨慎使用)
9. 获取远程仓库的最新变动:
git pull
10. 查看提交历史:
git log
11. 合并分支:
git merge <branch_name> // 将branch_name内容合并到当前分支
# --no-ff:即使合并解析为快进,也创建合并提交
12. 放弃本次合并回到解决冲突之前的状态
git merge --abort //本地解决冲突完成之后
13. 查看(所有)分支:
git branch (-a)
# 查看远程分支
git branch -r
14. 创建本地分支:
git branch <branch_name>
15. 创建并切换到新分支:
git checkout -b <new_branch_name>
16. 创建远程分支:
git push origin dev:dev // git push <远程主机名> <本地分支名>:<远程分支名>
17. 查看本地分支与远程分支对应关系:
git branch -vv
18. 本地分支与远程分支建立关系:
git branch --set-upstream-to=origin/dev dev // 将本地dev与origin/dev(远程)建立联系
19. 切换分支:
git checkout <branch_name>
20. 删除分支:
git branch -d <branch_name>
# 使用 -D 标志强制删除分支
git branch -D <branch_name>
21. 删除远程分支:
git push origin --delete <branch_name>
22. 拉取远端的开发分支并在本地建立一个dev-local分支与其对应:
git checkout -b dev-local origin/dev
# 如果我们此时远程没有origin/dev ,我们想从main分支拉一个新的分支出来:
# git checkout -b dev origin/main # 基于main分支新建一个分支
# git push origin dev:dev # 创建远程dev分支
# git branch -vv # 查看本地dev分支与远程分支对应关系,如果对应关系不为origin/dev,执行下面命令建立关系:
# git branch --set-upstream-to=origin/dev dev
# 如果出现报错:fatal: cannot set up tracking information; starting point ‘origin/main’ is not a branch
# 可能您的 origin 远程设置为仅获取某些分支。
# 解决办法:git remote set-branches --add origin main
23. 查看远程仓库:
git remote -v
24. 修改关联的远程仓库:
git remote set-url origin <repository_url>
25. 添加远程仓库:
git remote add <remote_name> <repository_url>
26. 拉取特定分支的远程仓库:
git pull <remote_name> <branch_name>
27. 设置远程仓库:
git push -u <remote_name> <branch_name>
28. 删除文件:
git rm <file_name>
29. 查看所有提交记录的修改文件信息:
git log --stat
30. 查看最后一次提交记录的修改文件信息:
git show --raw
31. 指定commit_id对应修改文件列表:
git show --raw commit_id
32. 查看某个文件的历史提交信息:
git log <file_name>
33. 查看指定author的修改信息:
git log --author=<author_name>
34. 查看所有修改相关的commitID和修改文件信息:
git log --pretty=oneline
35. 简洁版本查看ziyi最近的五次提交:
git log --author=ziyi --online -5
36. 查看所有标签:
git tag
37. 打标签
git tag -a -m <tag_name>
38. 查看/设置用户名:
git config --global user.name [‘你的用户名’]
# git config --global user.name ziyi:设置用户名为ziyi
# git config --global user.name:查看用户名
39. 查看/设置用户邮箱
git config --global user.email [‘你的邮箱’]
40. 安装rimraf:
npm install -g rimraf
41. 删除node_modules:
rimraf node_modules
42. 刷新/拉取 远程分支:
git fetch
43. stash储藏
(1).单次储藏及应用:
git status //进行储藏
git stash list // 查看储藏
git stash pop // 应用最近一次储藏
(2). 多次储藏及应用
git stash -m [stashMessage] // 标记此次储藏
git stash apply index // 取出指定index的储藏的修改到工作区中
git stash drop index // 将指定index的储藏从储藏记录列表中删除
git stash clear // 批量删除存储

浙公网安备 33010602011771号