自己的项目用git也一年多了 把git命令总结了以下
安装
创建版本库
- 初始化git
git init
- 添加到暂存区
git add <filename> || .
- 添加到版本库
git commit -m'commit info'
版本管理
- 查看文件状态
git status
- 日志
git log //查看日志
git reflog //记录每次的命令
- 版本回退
git reset --hard commit_id | HEAD^ | HEAD~10
- 撤销修改
git reset HEAD <filename> || . // 把暂存区的文件撤回工作区
git checkout -- <filename> | . // 撤销工作区的修改
- 删除文件
git rm <filename>
git commit -m'rm ' 重新提交
远程仓库
- 配置用户信息
git config --global user.name "your name"
git config --global user.email "your email"
git config --list //查看git的配置
- 创建ssh连接
ssh-keygen -t rsa -C "your email"
- 建立远程关联
git remote add origin <url>
- 查看远程关联信息
git remote -v
- 删除远程关联
git remote origin
- 推送到远程仓库
git push origin master -u (upstream 下次提交不必再输入origin master)
- 更新远程到代码到本地
git pull
分支管理
- 查看分支
git branch
- 创建分支
git branch <branchName>
- 切换分支
git checkout <branchName>
- 创建并切换分支
git checkout -b <branchName>
- 删除分支(不能删除自己现在所在的分支)
git branch -D <branchName>
- 合并分支(合并到当前分支)
git merge <branchName>
标签管理
- 查看标签
git tag
- 添加标签
git tag name
git tag -a <tagname> -m "blablabla..."可以指定标签信息
- 删除标签
git tag -d <tagname> 删除本地标签
git push origin :refs/tags/<tagname> 删除一个远程标签
- 推送标签
git push origin v1.0 推送本地标签
git push origin --tags 推送所有本地的标签
忽略特殊文件
在主目录下新建 .gitignore文件
冲突解决
代码冲突的时候git会保留两者 ,此时打开文件删除一项保留一项, 从新提交