git命令 | |
mkdir file | 创建文件子目录 |
touch file(后缀。txt) | 创建文本、文件 |
vi file | 编辑 |
git add file | 添加到缓存区,加。全部添加 |
git status | 查看当前状态 |
git commit -m“file” | 缓存区提较到本地版本库 |
git log | 查看看历史、git log则不能察看已经删除了的commit记录 |
git reflog |
查看历史commit id 记录 查看所有分支的所有操作记录(包括(包括commit和reset的操作),包括已经被删除的commit记录 |
git reset HEAD file | 有缓存区返回工作区(操作也回退) |
git checkout --file | 丢弃工作区 |
git reset --hard HEAD^ git reset --hard commitid |
回退到上一版本 回退到指定commitid版本,跳转版本 |
cat file | 查看指定文件内容 |
pwd | 查看当前路径 |
ls ls -l |
显示当前目录下的文件 显示当前目录下文件的详细信息 |
rm rm -rf |
删除一个文件 强制删除 |
git init | 初始化仓库 |
git clone git@github.com:server-name/name.git |
克隆到本地库 |
git remote add origin git@server-name:path/repo-name.git | 关联远程库(远程库名、) |
git push -u origin master | 推送到远程 -u第一次 |
git remote -v/version | 查看当前远程库,列出详细信息 |
git checkout -b <name> |
相当于以下两条命令:git branch dev 创建分支 git checkout dev 切换分支 |
git branch <name> | 创建分支 |
git checkout <分支名name> |
切换分支 |
git merge <name> |
合并分支: 合并某分支到当前分支 |
git branch -d <name> | 删除分支 |
git branch | 列出分支,当前分支前面带一个*号/查看分支 |
git log --graph --pretty=oneline --abbrev-commit |
用带参数的git log 也可以看到分支的合并情况 |
git log --graph |
可以看到分支合并图 |
git merge --no-ff -m "merge with no-ff" dev |
准备合并 合并分支时,加上 |
git stash |
储存当前缓存区(工作现场未提交部分、还需时间完成的但是有bug需修复) git stash list |
git stash pop | 回到工作现场并删除stash、/git stash apply 恢复后不删除stash,需要用git stash drop来删除 |
git branch -D <name> | 强制删除 (常用于未被合并的分支) |
git branch -a | 查看远程分支 |
git pull | 抓取远程的心情求 |
git checkout -b branch-name origin /branch-name |
本地创建和远程分支对应的分支 (本地和远程分支的名称最好一致) |
git branch --set-upstream branch-name origin/branch-name |
建立本地分支和远程分支的关联 |
git tag <name> |
打标签:git tag v1.0 6333333给commit id为6333.。。打标签 默认是HEAD |
git tag | 查看所有标签、标签是按字母排序不是按时间排序列出 |
git show <tag-name> | 查看标签信息,也可查看到说明文字 |
git tag -a v0.1 -m“version 0.1 released" 3636336 | 创建带有说明的标签,-a指定标签名,-m指定说明名字 |
|
通过-s用私钥签名一个标签;可以用PGP签名标签 |
|
删除本地标签 |
git push origin <tagname> | 推送某个标签到远程 |
git push origin --tags | 一次性推送全部尚未推送到远程的本地标签 |
git tag -d <tagname> git push origin :refs/tags/<tagname> |
如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除: 然后,从远程删除。删除命令也是push,但是格式如下: |
git config --global color.ui true | 让Git显示颜色,会让命令输出看起来更醒目 |