1 | git init | 初始化一个Git仓库 |
2 | git clone [url] | 克隆一个远程Git仓库到本地 |
3 | git add [file] | 添加文件到暂存区 |
4 | git add . | 添加所有改动的文件到暂存区 |
5 | git commit -m "message" | 提交暂存区的文件到本地仓库 |
6 | git status | 查看工作区和暂存区的状态 |
7 | git diff | 查看修改前后的差异 |
8 | git log | 查看提交历史 |
9 | git branch | 查看本地分支列表 |
10 | git branch [branch-name] | 创建新的本地分支 |
11 | git branch -d [branch-name] | 删除本地分支 |
12 | git checkout [branch-name] | 切换到指定分支 |
13 | git merge [branch-name] | 合并指定分支到当前分支 |
14 | git remote | 查看远程仓库列表 |
15 | git remote add [remote-name] [url] | 添加远程仓库 |
16 | git push [remote-name] [branch-name] | 推送本地分支到远程仓库 |
17 | git pull [remote-name] [branch-name] | 从远程仓库拉取最新代码 |
18 | git fetch [remote-name] | 从远程仓库获取最新代码,但不合并到本地分支 |
19 | git stash | 暂存当前修改的内容 |
20 | git stash apply | 恢复暂存的修改内容 |
21 | git stash drop | 删除暂存的修改内容 |
22 | git tag | 查看本地标签列表 |
23 | git tag [tag-name] | 创建新的本地标签 |
24 | git tag -d [tag-name] | 删除本地标签 |
25 | git push [remote-name] --tags | 推送所有本地标签到远程仓库 |
26 | git show [commit-hash] | 查看指定提交的详细信息 |
27 | git blame [file] | 查看文件每一行的修改历史 |
28 | git reset [commit-hash] | 撤销指定提交并删除后续提交 |
29 | git reset HEAD [file] | 将指定文件从暂存区移除 |
30 | git revert [commit-hash] | 撤销指定提交,但不删除后续提交 |
31 | git cherry-pick [commit-hash] | 选择指定提交并应用到当前分支 |
32 | git rebase [branch-name] | 将当前分支的修改应用到指定分支 |
33 | git bisect | 通过二分法查找导致错误的提交 |
34 | git grep [keyword] | 在版本库中查找包含关键字的文件和内容 |
35 | git log --author=[author-name] | 查看指定作者的提交历史 |
36 | git log --since=[date] | 查看指定日期之后的提交历史 |
37 | git log --until=[date] | 查看指定日期之前的提交历史 |
38 | git shortlog | 查看提交日志的简略信息 |
39 | git blame -L [line-number],[line-number] [file] | 查看文件指定行的修改历史 |
40 | git remote show [remote-name] | 查看远程仓库的详细信息 |
41 | git push -u [remote-name] [branch-name] | 推送本地分支到远程仓库,并建立跟踪关系 |
42 | git pull --rebase [remote-name] [branch-name] | 从远程仓库拉取最新代码并进行变基操作 |
43 | git log --pretty=format:"%h - %an, %ar : %s" | 自定义提交历史的输出格式 |
44 | git blame -M [file] | 查找文件中移动的行,并显示移动前的作者和提交信息 |
45 | git cherry-pick -n [commit-hash] | 只选择指定提交的修改内容,而不是整个提交 |
46 | git diff [commit1] [commit2] | 比较两个提交之间的差异 |
47 | git branch -m [old-branch-name] [new-branch-name] | 将本地分支重命名 |
48 | git for-each-ref | 显示所有标签和分支的详细信息 |
49 | git bisect start | 开始二分查找错误的提交 |
50 | git bisect bad | 标记当前版本为错误的版本 |
51 | git bisect good [commit-hash] | 标记指定提交为正确的版本 |
52 | git bisect reset | 结束二分查找并返回到当前分支 |
53 | git show-branch | 显示本地分支之间的关系 |
54 | git filter-branch | 对整个仓库进行过滤和重写历史 |
55 | git blame -C [file] | 查找文件中复制和移动的行,并显示复制或移动前的作者和提交信息 |
56 | git cherry-pick -e [commit-hash] | 打开编辑器以修改提交信息,而不是使用默认的提交信息 |
57 | git diff --cached | 比较暂存区和最后一次提交之间的差异 |
58 | git blame -L [start-line],[end-line] [file] | 查找文件的指定行范围内的修改历史 |
59 | git ls-files | 列出版本库中所有的文件 |
60 | git add -p | 交互式添加文件到暂存区 |
61 | git cherry-pick --no-commit [commit-hash] | 将指定提交的修改内容应用到当前分支,但不进行提交 |
62 | git rebase -i [commit-hash] | 交互式变基操作 |
63 | git submodule | 管理子模块 |
64 | git stash save "message" | 将修改内容暂存并添加注释 |
65 | git stash list | 列出所有暂存的修改内容 |
66 | git stash pop | 恢复并删除最近暂存的修改内容 |
67 | git stash apply stash@{n} | 恢复指定序号的暂存的修改内容 |
68 | git stash drop stash@{n} | 删除指定序号的暂存的修改内容 |
69 | git stash clear | 删除所有暂存的修改内容 |
70 | git blame -L '/regex/' [file] | 查找文件中匹配正则表达式的行,并显示修改历史 |
71 | git ls-remote | 显示远程仓库的引用 |
72 | git push [remote-name] :[branch-name] | 删除远程分支 |
73 | git log --graph --oneline --decorate | 显示提交历史的分支和标签信息 |
74 | git push [remote-name] HEAD | 推送当前分支到远程仓库 |
75 | git submodule update --init | 初始化子模块 |
76 | git submodule update | 更新子模块 |
77 | git stash branch [new-branch-name] | 从最近的暂存内容创建新的分支 |
78 | git rev-parse [commit-hash] | 显示指定提交的哈希值 |
79 | git commit --amend | 修改最后一次提交的信息 |
80 | git bisect visualize | 显示二分查找的结果 |
81 | git bisect run [script] | 运行脚本,自动标记版本是否有错误 |
82 | git blame -C -C [file] | 查找文件中复制、移动和重命名的行,并显示修改历史 |
83 | git merge --squash [branch-name] | 将指定分支的修改内容合并到当前分支,但不提交 |
84 | git config | 配置Git |
85 | git mv [old-file-name] [new-file-name] | 移动或重命名文件 |
86 | git cherry-pick -x [commit-hash] | 打印出应用指定提交的详细信息 |
87 | git rebase --interactive HEAD\~[n] | 对最近的n次提交进行交互式变基操作 |
88 | git stash save -u "message" | 暂存所有修改的文件,包括未跟踪的文件,并添加注释 |
89 | git blame -C -C -M [file] | 查找文件中复制、移动、重命名和修改的行,并显示修改历史 |
90 | git pull --rebase=preserve | 从远程仓库拉取代码并保留本地修改 |
91 | git checkout -b [branch-name] [commit-hash] | 创建新的分支并切换到指定提交的状态 |
92 | git rev-list --all --count | 显示版本库中提交的总数 |
93 | git log --pretty=format:"%h %s" --graph | 显示提交历史的图形化信息 |
94 | git merge --no-ff [branch-name] | 将指定分支的修改内容合并到当前分支,并创建一个新的提交 |
95 | git rebase --onto [new-base] [old-base] [branch-name] | 将指定分支从旧的基础变为新的基础 |
96 | git cherry-pick -S [commit-hash] | 签名应用指定提交的修改内容 |
97 | git revert --no-commit [commit-hash] | 撤销指定提交的修改内容,但不进行提交 |
98 | git blame -C -C -C [file] | 查找文件中复制、移动、重命名、修改和合并的行,并显示修改历史 |
99 | git stash save -a "message" | 暂存所有修改的文件,包括未跟踪和忽略的文件,并添加注释 |
100 | git log --since="1 week ago" --author="[author-name]" | 查看指定作者在一周内的提交历史。 |