常用命令
配置
- 对完成安装后的git进行基本配置,使用命令
git config :
git config --global user.name "your name" //设置全局用户名
git config --global user.email "your email" //设置邮箱
- 其他自定义git配置:
git config --global color.ui true //让git 显示不同的颜色
git config core.ignorecase true //让git 对仓库中的文件大小写敏感
- 查看所有已经做出的配置
git config -l
基本操作
1. 创建 git 版仓库
在本地创建仓库使用的命令是 git init : 首先进入到你需要进行创建仓库的文件夹路径下,然后命令行输入命令:
git init
然后通过命令ll 进行查看当前目录下的目录结构,如果存在.git 目录说明目录创建成功
2. 将文件添加到版本库中
在git commit 提交到仓库之前 需要先将其添加到暂存区。
2.1 将文件添加到缓存区的命令是:
git add . //将当前目录下的所有修改添加到暂存区中,除按照规则忽略的之外
git add Readme.md //将当前单个文件添加到暂存区
注意:空文件夹将不进入暂存区
2.2 将暂存区内的文件提交到仓库中:
git commit //将暂存区内的文件提交到仓库中
git commit -m //将暂存区内的文件提交到仓库中并设置评论
3. 查看仓库状态
命令:
git status
4. 查看仓库中的具体修改
git diff //查看当前版本库中的所有修改
git diff README.md //查看当前文件的具体改动
5. 查看提交的历史记录
git log //显示所有提交的历史记录
git log --pretty=online //单行显示提交历史记录内容
6.版本回退
git reset --hard 'commit_id' //回退到指定版本
git reset --hard HEAD^ //回退到上一个提交版本
git reset --hard HEAD^^ //回退到 上上个提交版本
7.回到未来某个提交
git reflog
git reset --hard 'commit_id'
8.撤销修改
8.1 丢弃工作区的修改
git checkout -- Readme.md //如果该文件在工作区中存在着,则丢弃该修改
git checkout -- . //丢弃当前工作区内的所有修改
8.2丢弃暂存区的修改
git reset HEAD Readme.md //将Readme.md 恢复到提交版本状态
9.删除文件
git rm Readme.md //删除已经被提交过的Readme.md
git rm 只能删除已经提交到版本库中的文件,其他状态会报错
分支管理
1.查看分支
git branch //查看本地分支
git branch -v //查看相对详细的本地分支信息
git branch -va //查看包括远程仓库在内的分支信息
2.创建分支
git branch dev //创建一个名称为dev的分支
3.切换分支
git checkout dev //创建dev分支后,通过命令切换到dev分支,此命令不创建分支
4.创建并切换分支
git checkout -b dev //新建dev分支,并切换到该分支上
5.合并分支
需要两步:
git checkout master //切换到需要作为主分支的分支
git merge dev //将dev分支中的修改合并到master分支中
6.删除分支
git branch -d dev //删除分支 dev
远程仓库
1.从远程仓库中克隆
git clone https://you_git_path //通过https协议,克隆Github上的git仓库的源码
git clone you_ssh_path // 通过ssh协议克隆的Github上的源码
2.添加远程仓库
git remote add origin your_remote_git_repo //为本地添加远程仓库
3.推送本地的内容到远程仓库
git push origin dev -u //第一次推送时建议使用
git push origin dev //将本地内容推送给分支dev
4.从远程仓库中获取最新内容
git fetch origin master //仅仅获取远程仓库中的更新内容,不会进行自动合并
git pull origin master // 在获取远程仓库内容后,自动做合并
5.查看远程仓库的内容
git remote [-v] //显示远程仓库的信息
6.建立本地分支与远程分支的关联
git branch --set-upstream 'local_branch' origin/remote_branch
7.修改本地仓库对应的远程仓库地址
git remote set-url origin url
标签管理
1.创建标签
git tag -a 'tagname' -m 'comment' 'commit_id' //-a 参数指定标签名,-m 参数备注信息 commit_id 指定打标签的提交
2.查看所有标签
git tag //查看本地仓库中的所有标签
3.查看具体标签
git show tagname
4.删除本地标签
git tag -d tagname
5.删除远程标签
git push origin :refs/tags/tagname
git push origin --delete tagname
git push origin :tagname
6.推送远程标签
git push origin tagname //推送单个标签
git push origin --tags // 推送所有标签到远程仓库中
其他命令
1. 临时保存修改
1.1 临时保存修改
git stash //保存本地仓库中的临时修改
1.2 查看临时保存
git stash list
1.3 恢复修改
git stash apply //恢复所有保存的临时修改
git stash pop // 恢复最近一次保存的修改
1.4 清理所有临时修改
git stash clear // 丢弃所有保存的临时修改
错误总结
问题一
来自参考
解决方案
因为git默认拒绝push操作,在远程git服务器上执行 git config receive.denyCurrentBranch ignore 或者在.git/config (同样在服务器上操作)中添加 [receive] denyCurrentBranch = ignore
问题二
在使用命令git push origin your_branch_filename 时报警告
You are not allowed to push code to protected branches on this project.
解决方案
这是属于保护分支,需要自己进行分支的创建。 具体操作链接
问题三
在使用git rebase 命令过程中,出现头指针分离的情况解决
解决方案
git branch -f master HEAD
git checkout master
参考文档
Git教程详细版
|