本文共 2534 字,大约阅读时间需要 8 分钟。
git init
.git文件夹。 git clone [url]
git clone [url] newname。 git status
-s可显示简短状态,显示对staging区域和working directory的改动。 git log
git log --oneline显示每条提交的简要信息。git log --graph以图形形式显示分支合并历史。git log branchname查看特定分支的提交记录。git log --oneline branch1 ^branch2查看在branch1但不在branch2中的提交。git log --decorate显示提交的标签信息。git log --author=[作者名字]筛选提交记录按作者查看。git log --since/--before/--until/--after按时间范围筛选提交记录。git log --no-merges忽略合并提交。git log --grep=[关键词]按提交信息过滤日志。默认git log --grep --author为OR逻辑,可用--all-match强制AND逻辑。git log -S按新增的代码过滤日志。git log -p显示每个提交的代码 diff。 git commit
git commit -m “commit信息”指定提交信息。git commit -a批量提交已追踪的文件。git commit --amend增补当前提交,替换上一次提交。 git reset
git reset HEAD取消所有暂存区的改动。git reset --soft将HEAD移动到指定提交,保留暂存区和索引。git reset --hard取消所有暂存区和工作目录的改动,将HEAD恢复到指定提交。git reset --mixed默认参数,HEAD移动到指定提交,索引和工作树恢复到该状态。 git stash
git stash list查看栈中的改动。git stash apply应用栈中的改动。git stash pop删除栈中的改动并应用。git stash drop删除栈中的特定改动。git stash clear清空所有栈中的改动。 git branch
git branch -v查看分支最后一次提交信息。git branch列出本地分支,当前分支以*标记。git branch (branchname)创建新分支。git branch -d (branchname)删除本地分支。git push (remote-name):(branch-name)删除远程分支。git push [alias] [branch]将当前分支推送到远程仓库。 git checkout
git checkout -b (branchname)创建并切换到新分支。git checkout --替换工作目录中的文件,保留暂存区和新文件。git checkout --[filename]替换指定文件,删除未追踪和未暂存的改动。 git merge
git merge [alias]/[branch]合并远程分支到当前分支。解决冲突可用git mergetool,冲突后用git add重新添加改动。 git tag
git tag v1.0在最新提交上打标签。git tag -a v1.0创建带有注释的标签。git tag -a -f v1.0强制创建标签。git fetch --tags获取所有可达标签。git push --tags推送所有标签。 git remote
git remote列出远程仓库别名。git remote -v显示远程仓库地址。git remote add [alias] [url]添加远程仓库。git remote rm [alias]删除远程仓库。git remote rename [old-alias] [new-alias]重命名远程仓库。git remote set-url [alias] [url]更新远程仓库地址,可加--push或--fetch参数。 git fetch
git fetch [alias]获取特定远程仓库。git fetch --all获取所有远程仓库内容。git fetch获取所有尚未检出的远程分支。 git push
git push [alias] [branch]推送到指定分支。git push --set-upstream [alias] [branch]将本地分支与远程分支关联。git push --force强制推送,覆盖远程提交。 git reflog
git reflog显示HEAD引用日志。git reflog show [ref]显示指定引用日志。git reflog expire清除过期的引用记录。git reflog delete [ref]删除指定引用记录。 ^
^n表示第n个父提交。~n表示连续n个父提交。 转载地址:http://osqyz.baihongyu.com/