-
基本操作
psd 显示当前目录
cd 切换本地路径
git init 初始化仓库
git add 添加修改至暂存区 git add . 添加根目录所有文件
git commit -m "提交至工作区“ 将暂存区的改动提交至工作区
git status 查看仓库当前状态
git diff <fileName> 查看文件改动信息
git log 查看提交日志(版本号)
git log --pretty=oneline 美化git log
git reset --hard HEAD^ 返回上一个版本
git reset --hard <commit-id> 返回指定版本
git reset HEAD <fileName> 将暂存区的修改撤销
git reflog 查看命令历史,以便确定要回到未来的哪个版本。
git rm <fileName> 删除工作区的文件(也可以直接在文件夹内删除)
git checkout -- <fileName> 撤销工作区的修改 ,误删恢复
git commit -m "确定从版本库中也删除文件" -
远程仓库操作
ssh-keygen -t rsa -C "youremail@example.com" 创建SSH key
git remote add origin git@server-name:path/repo-name.git 本地仓库关联至远程仓库
git push -u origin master 第一次推送master分支的所有内容
git clone git@server-name:path/repo-name.git 从远程克隆仓库至本地 -
分支操作
git branch 查看分支
git branch <name> 创建分支
git checkout <name> 切换分支
git checkout -b <name> 创建+切换分支
git merge <name> 合并某分支到当前分支
git branch -d <name> 删除分支
git branch -D <name> 强行删除还未合并的分支
git log --graph 查看分支合并图
git merge --no-ff -m " " 普通模式合并,能看出合并历史
git stash 暂时存储分支上未提交的改动,切换至其他分支
git stash apply 切换回来恢复改动
git stash drop 删除stash内容
git stash pop 恢复并删除stash -
多人协作
git remote -v 查看远程库信息
git push origin branch-name 从本地推送分支,如果推送失败用git pull抓取远程的新提交
git checkout -b branch-name origin/branch-name 在本地创建和远程分支对应的分支,本地和远程分支的名称最好一致
git branch --set-upstream branch-name origin/branch-name 建立本地分支和远程分支的关联
git pull 从远程抓取分支,如果有冲突,要先处理冲突 - 标签管理
git tag <name> 新建一个标签,默认为HEAD,也可以指定一个commit id;
git tag -a <tagname> -m "blablabla..." 指定标签信息;
git tag -s <tagname> -m "blablabla..." 用PGP签名标签;
git tag 查看所有标签。
git push origin <tagname> 推送一个本地标签;
git push origin --tags 推送全部未推送过的本地标签;
git tag -d <tagname> 删除一个本地标签;
git push origin :refs/tags/<tagname> 删除一个远程标签。