Git源码管理工具使用
注明:双击tap键为自动补全操作
1.视频地址:http://www.newbieol.com/course/index_102.html
2.sourcetree是一个拥有界面的git工具吧
下载官网 https://www.sourcetreeapp.com/ 这是比较好用的管理工具
3.安装的时候发现注册不了,上网搜了跳过登陆的方法,认识到了,百度才是我们的家
https://www.jianshu.com/p/3478e2a214a1 Windows 版 SourceTree 免登录跳过初始设置的方法
新建 创建
4.git基本命令操作
第一步:
ls
ls -al
vim hello.c --怎么用vim
git status --当前仓库下所有文件的状态
git add hello.c --让仓库关注hello.c(只是完成了对文件的关注)
第二步:
接下来 git commit
git log --查看相关信息
第三步:
vim hello.c --修改hello.c文件
git status
git add hello.c --这次是放到缓存文件中
git status
git commit
git status
git log --查看提交信息
重新回顾:
vim newbie.c --新建文件
未跟踪 未修改 修改 准备
git add newbie.c --关注
git commit
vim newbie.c --修改
git add newbie.c --让文件到准备状态
git status
git commit
git status这下面这张图是最重要的,
分析:以上第四点是对文件状态的分析,看懂了很重要,主要使用的命令如下:
vim hello.c
git add hello.c
git commit
git status
git log
5. patch概念--两个文件的差异
git format-patch -p4 //拿出四个patch文件
用ls查看会发现生成四个文件
用vim查看patch vim
eg:在kernel上的例子:
==》》》不想生成patch,通过commit值对两次之间的patch值进行比较
以上使用commit值 进行
下面重要的来了,版本回退
一、版本回退---
git reset --hard (后面添加上commit值) 真正的回退
注意:版本回退要一个一个来
注:撤销回退也可以这样用
二、撤销回退(恢复) 前提是如果生成的patch,或者记住commit值
注意:撤销回退要一个一个来
git am (patch)
6.patch的问答
rm 000* --移除以000开头的文件
mkdir new-hello --新建文件夹
cd new-hello/ --切换到hello文件夹
git init --新建一个git仓库后
git am ../hello/001-Init-commit.patch --打patch(打patch必须从第一个开始)
git log
cat hello.c --查看hello.c文件
示例图片:
打第二个patch
git am ../hello/0002-Add-hello.patch
git log
示例图片:
打第三个patch与第四个patch
git am ../hello/0002-Add-hello.patch
git log
7.分支的概念:
git checkout -b develop master --创建分支
git checkout master --切换回主分支
查看分支信息
git branch -av 最常用
git branch
重要的又来了:分支的合并: 把分支合并到主分支上
首先切换到master分支 git checkout master
在master上把develop分支merge到主分支
git merge develop
8.基于github远程服务器的提交
1.使用Git进行源码管理的方法:
在github上创建一个仓库:
2.下面这个图说明了远程服务器的代码
3.把本地仓库的文件关注到远程服务器
git log
git branch -av
git status
git remote add origin https://github.com/getker/getker.git
git push -u origin master --push 到远程服务器git push -u origin master
注意:第一次提交时需要强制提交《《==这一点很重要
git push origin master -f
这下面是师兄教的时候的Git命令实操:
新创建一个本地的文件夹
push命令
最新文章
- Debian的软件包管理工具命令 (dpkg,apt-get)详解
- spring拦截器 实现应用之性能监控
- ASP.NET知识总结(2.对比Get和Post提交方式)
- call()与apply()
- service&;thread
- [curator] Netflix Curator 使用
- uva494 Kindergarten Counting Game
- 双栈排序(codevs 1170)题解
- 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值(转载)
- ZOJ Problem Set - 1002(DFS)
- 正则化(Regularization)
- css盒子模型,定位,浮动
- 用户输入与while循环
- 7.ReadWriteLock接口及其实现ReentrantReadWriteLock
- kindeditor 上传下载文件
- 【Numpy应用】--对于图片处理的机器学习库的应用
- iOS 控制器的生命周期(UIController)
- django之关联field 描述子是如何实现的
- beta阶段性能指标测试
- js Dom对象的属性与方法
热门文章
- k8s健康检查(七)--技术流ken
- Java 设置PDF文档背景色
- javaweb中上传视频,并且播放,用上传视频信息为例
- appium+python搭建自动化测试框架_Appium元素定位(二)
- Ubuntu 服务器443端口证书配置
- HTTP中GET和POST的区别主要是那些,面试中可以加分的该说那些?
- mysqlbinlog 工具分析binlog日志
- 利用ZYNQ SOC快速打开算法验证通路(6)——利用AXI总线实时配置sysGen子系统
- express+sequelize 做后台
- Problem of Creating Topics in Kafka with Kerberos