git init 在当前目录下新建一个git代码库
git init [project-name] 新建一个目录,将其初始化为git代码库
git clone [url] 下载一个项目和它的整个代码历史
git config --list 显示当前的git配置
git config -e [--global] 编辑git配置文件
git config [--global] user.name "[name]" 修改配置设置提交代码时的用户信息,例如:git config --global user.name "bryan sun"
git add [file1] [file2] ... 添加指定文件到缓存区
git add [dir] 增加指定目录到缓存区,包含子目录
git add . 增加当前目录的所有文件到存储区
git status 查看缓存区文件
git rm --cached [file] 删除缓存区的指定文件,不删除物理文件
git rm --cached -r [dir] 删除缓存区指定目录下的所有文件,不删除物理文件
git rm --f [file] 删除缓存区的指定文件,物理文件删除(不会回收到垃圾桶),慎重操作
git rm --f -r [dir] 删除缓存区指定目录下的所有文件,物理文件删除(不会回收到垃圾桶),慎重操作
git commit -m "备注" 提交缓存区到仓库区
git commit [file1] [file2] ... -m "备注" 提交缓存区的指定文件到仓库区
git commit -a -m "备注" 提交工作区自上次commit之后的变化,直接到仓库区
git commit -v 查看缓存区文件的差异,(执行过git add )
git commit -v [url]或者[file1] 查看本地区文件修改差异,(没有执行过git add)
git commit --amend -m [备注] 如果代码没有新变化,修改当前提交日志的备注信息等,待完善
git commit --amend [file1] [file2] ... 重做上一次commit,并包括指定文件的新变化
git restore [file] 指定文件恢复到上一个版本
git reset HEAD 回退到当前版本 (在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100)
git branch 列出所有本地分支
git branch -r 列出所有远程分支
git branch -a 列出所有本地分支和远程分支
git branch [branch-name] 新建一个分支,但依然停留在当前分支
git checkout -b [branch] 新建一个分支,并切换到该分支
git branch [branch] [commit] 新建一个分支,指向指定commit
git branch --track [branch] [remote-branch] 新建一个分支,与指定的远程分支建立追踪关系
git checkout [branch-name] 切换到指定分支,并更新工作区
git checkout - 切换到上一个分支
git branch --set-upstream [branch] [remote-branch] 建立追踪关系,在现有分支与指定的远程分支之间
git merge [branch] 合并指定分支到当前分支
git cherry-pick [commit] 选择一个commit,合并进当前分支
git branch -d [branch-name] 删除分支
git push origin --delete [branch-name] 删除远程分支
git branch -dr [remote/branch] 删除远程分支
gitk 图形界面