Git操作文档
来源:互联网 发布:知乎如何关闭问题 编辑:程序博客网 时间:2024/06/05 14:49
mkdir 创建文件夹
cd 进入当前目录 ( 不写目录名 直接回到家目录)
cd .. 回到上一层
ls 查看当前目录内容
ls -a 查看当前目录下隐藏文件
pwd 查看当前目录
open . 打开当前目录
rm 删除文件
建立项目仓库
$ cd Git$ git init
上述操作的结果是在 WORK 目录下创建了一个.git隐藏目录,它就是所谓的Git仓库,不过现在它还是空的。另外WORK目录也不再是普通的文档目录了,今后我们将其称为工作树。
$ git add . 添加所有文件$ git commit -m “添加文件” 告诉git,把文件提交到仓库 并备注为”添加文件”
commit 只负责把暂存区的文件提交 文件没有被写入到暂存区,commit 不会提交到仓库
$ git status 查看仓库当前状态 $ git diff 查看具体改变内容
版本回退
$ git log 查看仓库历史记录(详细版)$ git reflog 查看仓库历史记录(精简版)$ git log --pretty=oneline (版本号加版本备注)$ git log --pretty=oneline --abbrev-commit (前7位版本号加版本备注)$ git reset --hard HEAD^ /*回到上一个版本 HEAD^^回到上上个版本 回到往上三个版本以上 用HEAD~100*/$ git reset --hard e8f9206 (回到之前以后恢复新的版本)
删除文件
$ git rm text1.rtf 删除text1.rtf文件$ git checkout -- text1.rtf 从本地库中把text1.rtf找回来
远程仓库
在GitHub上创建一个远程库,并配置公钥,每一个远程库对应一个公钥
$git remote add origin git@github.com:UniqueMy/learngit.git关联远程库
注意更换为自己的远程库名
$ git push -u origin master
把本地库中内容push到远程库中 (-u 参数 是为了把本地master分支和远程master分支关联,以后可以简化命令)
$ git push origin master 把本地master分支的最新修改推送至GitHub
克隆
$ git clone git@github.com:UniqueMy/learngit.git$ git checkout -b dev origin/dev 克隆远程的dev分支到本地$ git pull 把最新的内容抓取下来$ git branch --set-upstream dev origin/dev 设置本地dev分支和远程 origin/dev分支的链接
创建分支
$ git checkout -b dev checkout 加上 -b 表示创建并切换 相当于$ git branch dev$ git checkout dev$ git branch <name> 创建分支$ git branch 列出所有分支 当前分支会用*标注$ git merge <name> 合并指定分支到当前分支$ git branch -d <name> 删除分支
解决冲突
$ git log - -graph 查看分支合并图$ git merge --no-ff -m "merge with no-ff" <name>
合并分支并创建一个commit 所以加入-m参数 - -no-ff这种合并分支的模式和默认的Fast forward模式相比,能保存合并的历史记录 能看出曾经做过合并 另一种模式不能看出做过合并
修复BUG
$ git stash 把手头未完成工作现场储存起来$ git stash list 查看储存起来的工作现场$ git stash pop 恢复工作现场并把stash的内容删除$ git stash apply 恢复工作现场 不删除stash$ git stash drop 删除stash
修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场
$ git branch -D <name> 强制删除一个还没有合并的分支
多人协作
$ git remote 查看远程库信息 (精简版)$ git remote -v 查看远程库信息 (详细版)$ git push origin <name> 把分支内容推送到远程库
多人协作的工作模式通常是这样:
1. 首先,可以试图用git push origin 推送自己的修改;
2. 如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
3. 如果合并有冲突,则解决冲突,并在本地提交;
4. 没有冲突或者解决掉冲突后,再用git push origin 推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令
git branch –set-upstream-to origin/
创建标签
$ git tag 查看所有标签$ git tag <name> 打标签$ git tag <name> <版本号前6位> 给指定版本打标签$ git show <name> 查看标签信息$ git tag -a <标签名> -m <标签说明> <版本号> 打一个有说明的标签$ git tag -d <name> 删除标签$ git push origin <name> 远程推送某个标签$ git push origin --tags 远程推送所有未推送的标签删除远程标签1.$ git tag -d <name> 删除本地标签2.$ git push origin :refs/tags/<name> 删除远程标签配置别名$ git config --global alias.st status 这样st 就代表 status$ cat .git/config 每个仓库的配置文件$ cat .gitconfig 当前用户的配置文件
- Git操作文档
- git 操作文档
- git操作文档
- git操作
- Git操作
- git操作
- git操作
- git 操作
- Git 操作
- git 操作
- GIT操作
- Git 操作
- git操作
- git 操作
- git操作
- git操作
- git操作
- git操作
- HDFS学习笔记之<技巧>
- IOS 简单的动画自定义方法(旋转、移动、闪烁等)
- linux之sed用法
- GLFW编译安装笔记
- Java.lang.Boolean.valueOf()方法
- Git操作文档
- .net中使用反射实例:操作非公有成员
- hibernate与ibaties区别
- C/C++函数调用约定详解
- Linux(ubuntu14.04)安装及破解WebStorm11
- SEL使用
- android 6.0 权限获取
- 更新证书错误:No matching provisioning profiles found
- Netty2: 事件驱动的NIO框架(实践)