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命令

Git源码管理工具使用的更多相关文章
- [转]VS2015 Git 源码管理工具简单入门
VS2015 Git 源码管理工具简单入门 1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本 ...
- VS2015 Git 源码管理工具简单入门
1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本地版本库,相当于(Fetch+Meger) 获取 ...
- 【转】Visual Studio团队资源管理器 Git 源码管理工具简单入门
1.1 环境 Visual Studio + GitLab (其他版本同理) 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本地版本库,相当于(Fetch+Me ...
- 【Linux】Jenkins+Git源码管理(三)
摘要 本章介绍Jenkins配合Git源码管理,关于Jenkins的基本操作,参照[Linux]Jenkins配置和使用(二) 事例说明:在linux环境下,安装的jenkins,已安装git. 代码 ...
- Docker:pipeline编写基本技巧- jenkins配置通过免交互方式拉取git源码管理仓库的代码
工作中,从git仓库拉取代码有2种方式:交互式和非交互式 什么是交互式?就是拉取需要权限才能访问的代码时,需要输入密码 免交互式呢? 是通过密钥,私钥的方式,让服务端信任客户端,产生信任后,任何一次客 ...
- GIT 源码管理-简介
关于GIT GIT 是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)创作,于2005年以GPL发布.最初目的是为更好地管理Linux内核开发而设计.是目前世界上最先进的分 ...
- Google 多源码管理工具 gclient
google的chromium项目是用gclient来管理源码的checkout, update等. gclient是google专门为这种多源项目编写的脚本,它可以将多个源码管理系统中的代码放在一起 ...
- gclient多源码管理工具 DEPS文件
gclient来管理源码的checkout, update等. gclient是google专门为这种多源项目编写的脚本,它可以将多个源码管理系统中的代码放在一起管理.甚至包括将Git和svn代码放在 ...
- 源码管理工具Git-windows平台使用Gitblit搭建Git服务器
原文地址:https://blog.csdn.net/smellmine/article/details/52139299 搭建Git服务器,请参照上面链接. 注意: 第十二步:以Windows Se ...
随机推荐
- javascript小记四则:用JS写一个滚动横条文字,可以根据需要进行修改;
网页上的一些广告文字,一直会滚动是怎么做到的,今天给大家演示下,非常简单,源码如下(本案例是在.net平台上,但HTML是通用的): <!DOCTYPE html> <html> ...
- nginx 启动错误
场景 在Windows下 启动nginx报错: nginx: [error] ReadFile() : Incorrect function) 解决 因为 nginx.conf 中存在 /* 被认为是 ...
- 处理范例代码Webapi中的Mongodb的Bson中ObjectId反序列化异常
微软代码范例中的一个Bug 处理Mongodb的Bson中ObjectId反序列化异常 https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/f ...
- django 时区和系统(ubuntu)时区修改
django时区默认使用UTC,中国人使用CST东八区. settings.py改为上海时区 #settings.py TIME_ZONE = 'Asia/Shanghai' # True:使用UTC ...
- LAMP动静分离安装(源码安装)
环境: 版本 IP地址 源码包版本 Centos7.5_mysql 192.168.111.3 mysql-5.7.24.tar.gz,cmake-3.13.1.tar.gz,boost_1_59_0 ...
- C语言面试基础知识整理
一.预处理 1.什么是预编译?何时需要预编译? (1)预编译又称预处理,是做些代码文本的替换工作,即程序执行前的一些预处理工作.主要处理#开头的指令,如拷贝#include包含的文件代码.替换#def ...
- 记录一次Orthanc dicom数据异常手动修复
问题复现场景 同一个StudyInstanceUID,对应两个不同的PatientID. 通俗讲,原本是一个病人的一次影像,却割裂成两个病人的影像,虽然两个病人不影响系统数据,但是同一个Study分别 ...
- python3通过os模块统计指定目录下文件个数
代码: import os path = r"C:\Users\Administrator\Desktop\***" print('filenum:',len([lists for ...
- UI对象库-定位元素与程序分离
1.前言 这几天有人问我,UI自动化测试中使用到的页面定位元素应该存放在哪里比较合适?我想说的是如果你使用的是PO设计模式设计测试用例的话,可以把定位元素存在每一个page页面,一个page存放对应的 ...
- 【Teradata SQL】行转列函数TDStats.udfConcat
TDstats.udfConcat为Teradata自带UDF,定义如下: show function tdstats.udfconcat; REPLACE FUNCTION tdstats.UDFC ...