git仓库管理笔录
Git是目前世界上最先进的分布式版本控制系统(没有之一)。
小明做了个个人博客,放到了Git 仓库里面。第二天换了台电脑,只需要 git clone 克隆一下git 远程仓库的代码到本地即可。然后他又对项目新增了一个又一个新的功能,每次做完之后,只需要git add ... commit ... push 到Git 仓库里面去就好了,每一次提交到远程仓库都会自动的生成一个历史版本永久存放在Git中。某日,小明发现他最近一次的更改将自己的博客改坏了,导致很多功能失效,于是 他只需要 git reset --hard f8af3fe。。。就又恢复到 f8af3fe 这次提交上了,然后重新提交一下,博客就全部恢复了,但是后面改的东西没了,他可以将最后一次的修改代码再放到本地检测 测试通过后提交 然后完美保存。
Git 就是这么个简单的工具!
简单的几句代码可以给码农带来很大的便利,而且在一定的存储空间内,Git 完全开源免费!帮你存储不怕丢失!至于安全,你不相信他你就不要用他!
不同的系统安装方法不一,自行安装,本博客主要是写给自己看的,万一忘记了可以快速浏览自己的博客!
简单的介绍一下git 常用的命令:
git pull 获取线上最新代码
git status查看当前分支状态 rm a.html 删除a.html文件 git rm a.html 从版本库中删除文件 git log 查看历史提交 git reflog 查看提交的命令历史git diff a.html 查看当前文件的最近修改git add a.html 添加单个修改的文件
git add . 添加所有修改的文件
git commit -m "注释" 提交并给本次提交打上 “注释” 的标签,也可以 git commit -am "注释"
git push origin master 将本地提交后的代码推送到线上Git仓库master分支
git branch -u origin/mybranch 或者 git push origin/mybranch -u 关联远程分支
git pull origin master 指定只获取线上master分支代码
git clone git@github.com:999999/88888.git 克隆git仓库的项目到本地
git branch dev 创建一个dev的分支(等于上个分支的代码)
git checkout dev 签出dev分支
git checkout -b dev 上面两行合并为此一行
git branch -d dev 普通删除 dev 分支
git branch -D dev 强制删除 dev 分支
git checkout -b dev origin/dev 从远程签出 dev 分支
git push origin --delete <remote-branchname> 删除远程分支
git push origin :<remote-branchname> 同上(删除远程)
git branch -m <new-branch-name> 重命明当前分支
git commit --amend 修改上一个commit的描述
git blame <file-name> 查看某文件作者
git branch --set-upstream dev origin/dev 将本地分支和远程分支构建链接 git tag v1.11.1 打上 v1.11.1 的标签 git tag -d v1.11.1 删除 v1.11.1 的标签
git push origin :refs/tags/v0.9 togit@github.com:999999/88888.git从远程删除v0.9的标签 小明正在 master 分支上开发项目,突然接到紧急任务 需要去product 分支上修改某个文件!
于是小明可以选择 提交后切换分支,也可以将当前分支的修改放入暂存区保存起来
git stash 本地储藏当前修改git stash list查看储藏列表信息
git stash apply 恢复储藏的状态(但并不删除该储藏)git stash pop恢复并删除最后提交的储藏
git stash clear 删除所有储藏git stash apply stash@{0} 恢复第{0}的储藏
git merge dev 将当前分支与dev 分支合并,合并后 dev分支不变,当前分支代码齐全最烦的就是合并冲突 假设出现了冲突就很麻烦 webStrom 自带了解决冲突 对比文件的(个人不太习惯)
我电脑Mac 下载了一个 Beyond Compare 软件
假设出现了合并冲突 就使用 git mergetool 命令将自动调用并打开 Beyond Compare 软件,至于怎么用,自己看吧 也很简单,选好了,快捷键保存退出即可!git remote 查看所有远程仓库
git remote set-url origin <URL> 修改远程仓库 URL
git remote add origin <remote-url> 增加远程仓库
git checkout <branch-name> && git cherry-pick <commit-id> 把A分支的某一个commit放到b分支上
追加:
修改已commit的内容:
如果只是commit到了本地 ,未push:git commit --amend
会打开本地缓存文件,修改一下第一行上一个commit的内容保存退出即可
如果要将本地和线上的commit 内容进行修改
git commit -f --amend (并不建议)
同上
神器
如 git status 如何直接使用 git st 达到同样的效果git config --global alias.st status 这就使 git status === git st 了 同样git config --global alias.co checkout git co
git config --global alias.ci commit git cigit config --global alias.br branch git br 大体上就是这么多了 能够灵活使用就好,当然还有个别的没写出来,欢迎评论提点! 更详细的东西看 廖雪峰Git教程 吧!
git仓库管理笔录的更多相关文章
- sourcetree安装以及跳过sourcetree注册登录 - git仓库管理工具桌面版
腾讯软件下载:https://pc.qq.com/detail/17/detail_23237.html 官网下载:https://www.sourcetreeapp.com/ 下载完直接安装 ...
- git仓库管理
删除本地仓库当前关联的无效远程地址,再为本地仓库添加新的远程仓库地址 git remote -v //查看git对应的远程仓库地址 git remote rm origin //删除关联对应的远程仓库 ...
- Git系列四之在本地服务器搭建gitlab仓库管理
1.Git仓库管理 现在本地已经创建了git仓库,又在gitlab上创建了一个git仓库,并且让这两个仓库进行远程同步,这样gitlab仓库既可以备份也可以与他人协作管理远程仓库以及根据需要推送或拉取 ...
- Git系列四之在本地服务器搭建gitlab仓库管理(centeros环境下)
1.Git仓库管理 现在本地已经创建了git仓库,又在gitlab上创建了一个git仓库,并且让这两个仓库进行远程同步,这样gitlab仓库既可以备份也可以与他人协作管理远程仓库以及根据需要推送或拉取 ...
- GitLab/Git在AndroidStudio上的使用(转)
1.在AndroidStudio上的配置GitLab 1)首先先将gitlab上的开发项目clone到本地(可以使用命令行或者管理工具,具体操作在GitLab中已经涉及,这里不再赘述),然后导入到An ...
- 基于gitosis的Git云端服务器配置
(本文需要自己实践,由于时间关系,我仅仅是做了整理和快速的练习,至于笔记中的账号和ip域名都是我参考文章中的.如果读者有任何问题欢迎留言和发邮件到luoquantao@126.com) 硬件:云端阿里 ...
- Git配置和一些常用命令
Git:常用命令.... git clone <repo> git config –list git diff –staged add后,commit前的撤销:git rm –cached ...
- git的学习笔记
1. Git介绍 Git是一个开源的分布式版本控制软件,用以有效.高速的处理从很小到非常大的项目版本管理. Git 最初是由Linus Torvalds设计开发的,用于管理Linux内核开发. Git ...
- git恢复误删除文件
在git仓库管理下误删除文件一般会分为以下3种情况: 1.手动直接删掉,如选择-右击-删除 这种删除未修改本地仓库[版本库],只修改了工作区,直接git checkout -- fileName即可恢 ...
随机推荐
- IntelliJ IDEA使用(一)基本设置与类、方法模板设置
其实之前一直开发都是在使用的是Eclipse,但是最近在做Maven项目的时候要用IntelliJ IDEA,据说这个idea功能非常的强大,最近在使用的时候发现如果适应的真的是非常的强大.感觉是比E ...
- C# XmlDocument操作XML
XML:Extensible Markup Language(可扩展标记语言)的缩写,是用来定义其它语言的一种元语言,其前身是SGML(Standard Generalized Markup Lang ...
- 老板让我们去陪睡!-It高管的焦虑
老板是我非常敬重的前领导之一,他的一些管理风格,也影响了后来我对技术团队的管理.就是这样一个非常令人尊敬的领导,为什么会有这么过分的要求,请允许我先卖个关子,接下来就会知道. 理想企业 什么是程序员理 ...
- 个人作业3-个人总结(Alpha阶段)
一.个人总结 1.团队状况:这是我们第一次团队开发,小组成员的编程水平都相对一般,要在一周内完成一个APP是一个很大的考验.再加上冲刺的那周团队大半成员都在为一个比赛培训,时间就更少了,曾经有很多次我 ...
- 团队作业4——第一次项目冲刺(Alpha版本) 日志集合处
第一天(2017.4.23) http://www.cnblogs.com/1413none/p/6752325.html 第二天(2017.4.24) http://www.cnblogs.com/ ...
- Swing-布局管理器之FlowLayout(流式布局)-入门
FlowLayout应该是Swing布局管理器学习中最简单.最基础的一个.所谓流式,就是内部控件像水流一样,从前到后按顺序水平排列,直到达到容器的宽度时跳转到第二行.既然是水平排列,那么就存在三种基本 ...
- 201521123086《java程序设计》第7周
本章学习总结 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 以下是ArrayList的contains源代码: public boolean con ...
- 201521123036 《Java程序设计》第5周学习总结
本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 接口(interface):对行为的抽象 方法声明和常量值的集合 方法声明:接口中所有 ...
- 201521123077 《Java程序设计》第10周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 多线程 Runnable类 表示任务的类,可以当作参数传入Thread的构造器来运行该任务 Thread类 ...
- 201521123045 《Java程序设计》 第10周学习总结
---恢复内容开始--- 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 1.finally 题目4-21.1 截图你的提交结果(出现学号) ...