git 初步使用01

  1. git工作流程
    在这里插入图片描述
  2. git的安装
    1)安装git
    2)安装乌龟
    3)汉化乌龟
  3. 创建本地仓库
    在一个空目录,打开git bash here, 输入命令 git init

删除并保留本地副本
选中目标文件,右键乌龟,删除并保留本地副本
这时候目标文件会有一个X删除标记,再提交,版本库里就没有了目标文件。
4. 将一个工程添加到本地仓库

  1. 将工程目录复制到 workspace(带有.git的文件夹)里面去
  2. 忽略.idea 和其他不用提交到仓库的文件夹
    .gitignore 这个文件需要提交
    在这里插入图片描述
    在这里插入图片描述
    5.使用github创建一个远程仓库
    New respository
    git bash here

1)ssh 模式

git remote add origin git@github.com:xxx/repo1.git

使用git bash 创建ssh 公钥与私钥
输入命令 ssh-keygen -t rsa 回车,会在用户目录下生成两个文件
a.id_rsa.pub b.id_rsa 其中id_rsa.pub是公钥,
打开github 头像 + settings SSH and GPG keys
复制公钥内容进去

可以使用命令 git push -u origin master 提交上去了
也可以使用乌龟来配置提交
2)https方式
需要用户名和密码验证
6. 从github clone到本地仓库(Code -> Clone with SSH or https)
可以选择 ssh或者https 任意一种
直接git clone git@github.com:xxx/repo1.git

  1. 解决冲突
    a. 情景一
    同一分支,B同学修改一文件已经push origin master了,A同学并不知道也没有pull,A同学也修改了同一文件,A在push origin master 的时候出现冲突,推送失败,这时候处理A同学处理步骤:
    1)需要先pull远程代码:git pull origin/master (拉取远程仓库进行自动合并) 如果能自动合并,git会提示auto merge成功,这时可以直接git push origin master
    2)如果不能自动merge,git会提示auto merge失败,需要手动解决冲突:
    git status 查看冲突情况修改冲突
    git status 查看冲突解决情况
    git add .
    git commit -m ‘解决冲突的注释说明’
    git push origin master
    比如
=======这一段就是,就是B同学修改的内容,
2+21:21
>>>>>>> b6f98f9237d1c91f9628477bf2ddb500c8f89f20
<<<<<<< HEAD 这一段就是,就是A同学修改的内容,
1+21:21
=======
1 2053
2+2100
1+2101
<<<<<<< HEAD
1+2121
=======
2+2121
>>>>>>> b6f98f9237d1c91f9628477bf2ddb500c8f89f20

A同学手动解决冲突如下:

1 20:53
2+21:00
1+21:01
1+21:21
2+21:21

8.分支相关
查看所有分支,包括远程 分支

git branch -a

如何拉去远程分支(比如拉去dev分支)

第一种方式
查看所有分支情况
git branch -a
* masterremotes/origin/HEAD -> origin/masterremotes/origin/devremotes/origin/master在本地创建dev分支,并切换到dev分支git branch devgit checkout dev直接pull远程dev分支git pull origin dev
第二种方式
我想从远程仓库里拉取一条本地不存在的分支时git checkout -b 本地分支名 origin/远程分支名git checkout -b dev origin/dev如果不成功也可以先执行git fetch origin dev然后再git checkout -b dev origin/dev
  1. 从git仓库,恢复误删的文件(工作区)
    直接从本地把文件checkout出来就可以了,用不着从远程服务器上pull下来
    因为,所有的历史版本你的本地都有的。

具体做法
git checkout file

同时恢复多个被删除的文件:
git ls-files -d | xargs -i git checkout {}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/382427.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go语言爬虫项目将结果写入MySql数据库

来源于Google资深工程师深度讲解Go语言 package mainimport ("fmt""io/ioutil""net/http" )const url "http://www.zhenai.com/zhenghun"func main() {//发送get请求resp, err : http.Get(url)if err ! nil {panic(err)}//关闭通道d…

从《四驱兄弟》到“联想中国”

《四驱兄弟》 小学的时候看过一个日本的动画片叫四驱兄弟&#xff0c;里面就是一群小朋友代表国家各种比赛&#xff0c;其中让我象比较深刻的是他把美国队描述的非常邪恶&#xff0c;各种破坏别人的车子&#xff0c;通过卑鄙手段取得胜利。然后最后好像是正义战胜邪恶的剧情还…

位图原理、代码实现及应用实例

位图的原理&#xff1a; 在位图中采用比特位表示对应的元素存在或者不存在 0&#xff1a;不存在 1&#xff1a;存在例如一个int整数有32个比特位可以表示0-31个整数。 再举一个例子 存入的数字为8988 首先&#xff1a; 8988/32 280 其次&#xff1a; 8988%32 28 再来一个例…

布隆过滤器的原理、应用场景和源码分析实现

原理 布隆过滤器数据结构 布隆过滤器是一个 bit 向量或者说 bit 数组&#xff0c;长这样&#xff1a; 如果我们要映射一个值到布隆过滤器中&#xff0c;我们需要使用多个不同的哈希函数生成多个哈希值&#xff0c;并对每个生成的哈希值指向的 bit 位置 1。 例如针对值 “baid…

Redis运维和开发学习笔记(1) Redis简介

文章目录Redis的特性速度快持久化多种数据结构主从复制高可用和分布式典型的应用场景Redis启动和可执行文件Redis可执行文件说明启动方式验证redisredis常用配置redis数据结构和内部编码Redis是单线程&#xff0c;不会同时执行两条命令哈希慢查询pipelineRedis的特性 速度快 …

Redis运维和开发学习笔记(5) 主从复制和sentinel哨兵模式

Redis运维和开发学习笔记(5) 主从复制和sentinel哨兵模式 主从复制 将主节点的数据改变同步给从节点 作用 备份数据读写分离 存在的问题&#xff1a; 手动干预切主等操作主节点的写能力受到单机限制主节点的存储能力受到单机限制 主从模式的故障恢复 当主节点发生故障时&am…

Redis运维和开发学习笔记(7) 内存管理和过期策略

Redis运维和开发学习笔记(7) 内存管理和过期策略 文章目录Redis运维和开发学习笔记(7) 内存管理和过期策略内存回收策略惰性删除定时任务删除maxmemory过期策略allkeys-lru主从搭建测试搭建完毕主从测试结果volatile-lru测试结果volatile-ttl测试结果allkeys-lru内存回收策略 …

Effective C++学习第十二天

条款47&#xff1a;请使用traits classes表现类型信息STL有五类迭代器分类&#xff0c;input迭代器&#xff08;只读&#xff0c;一次&#xff0c;向前&#xff09;、output迭代器&#xff08;可写&#xff0c;一次&#xff0c;向前&#xff09;、forward迭代器&#xff08;读/…

Linux 学习

1.linux文本命令行语言环境设置命令 查看当前语言环境&#xff1a; echo &#xffe5;LANG 修改&#xff1a; LANG选择的语言环境’ 引申&#xff1a;https://blog.csdn.net/huoyunshen88/article/details/41113633 2.linux中的硬链接和软连接 linux中文件的储存方式&#xf…

redis源码剖析(四)跳表

文章目录整数集合跳跃表压缩列表总结整数集合 当一个集合只包含整数&#xff0c;且这个集合的元素不多的时候&#xff0c;Redis 就会使用整数集合 intset 。首先看 intset 的数据结构&#xff1a; typedef struct intset {// 编码方式uint32_t encoding;// 集合包含的元素数量…

在Redis客户端设置连接密码 并演示密码登录

我们先连接到Redis服务 然后 我们要输入 CONFIG SET requirepass “新密码” 例如 CONFIG SET requirepass "A15167"这样 密码就被设置成立 A15167 我们 输入 AUTH 密码 例如 AUTH A15167这里 返回OK说明成功了 然后 我们退出在登录就真的需要 redis-cli -h IP地…

redis源码剖析(五)—— 字符串,列表,哈希,集合,有序集合

文章目录对象REDIS_STRING &#xff08;字符串&#xff09;REDIS_LIST 列表REDIS_SET &#xff08;集合&#xff09;REDIS_ZSET &#xff08;有序集合&#xff09;REDIS_HASH (hash表)int refcount&#xff08;引用计数器&#xff09;unsigned lru:REDIS_LRU_BITS对象 对于 Re…

redis源码剖析(六)—— Redis 数据库、键过期的实现

文章目录数据库的实现数据库读写操作键的过期实现数据库的实现 我们先看代码 server.h/redisServer struct redisServer{...//保存 db 的数组redisDb *db;//db 的数量int dbnum;... }再看redisDb的代码&#xff1a; typedef struct redisDb {dict *dict; /*…

linux中错误总结归纳

1.使用gcc编译C文件&#xff0c;C文件在for循环语句中出现变量定义 编译器提示错误&#xff1a;“for”loop initial declarations are only allowed in C99 mode. note:use option -stdc99or-stdgnu99 to compile; 原因&#xff1a;gcc的标准是基于c89的&#xff0c;c89不能在…

makefile内容小结

makefile中每个功能主要分为三部分&#xff1a;目标&#xff0c;依赖条件和命令语句 1.支持对比更新的Makefile写法&#xff08;只会编译文件时.o文件和.c文件时间不一致的文件&#xff09; 2.使用makefile自动变量和自定义变量的makefile写法 其中&#xff1a;这三个符号为ma…

事务隔离级别动图演示

事务的基本要素&#xff08;ACID&#xff09; 原子性&#xff08;Atomicity&#xff09; 事务开始后所有操作&#xff0c;要么全部做完&#xff0c;要么全部不做&#xff0c;不可能停滞在中间环节。事务执行过程中出错&#xff0c;会回滚到事务开始前的状态&#xff0c;所有的…

linux中的man文档结构

使用命令 man chapter章节号查找的内容

linux文件操作相关函数

&#xff08;1&#xff09;stat函数&#xff1a;显示文件的相关信息&#xff08;类似于 ls -l的感觉&#xff09; 头文件及函数原型&#xff1a; 函数参数:path:文件的路径&#xff0c;buf是指待写入的文件信息&#xff0c;fd:表示文件描述符&#xff1b; stat,fstat,lstat三者…

linux目录操作函数

&#xff08;1&#xff09;chdir函数&#xff1a;修改当前进程的路径 函数头文件及原型&#xff1a; 参数&#xff1a;要修改的文件路径或文件描述符&#xff08;一般是当前空闲最小的&#xff09; 返回值&#xff1a;成功&#xff08;0&#xff09;&#xff0c;失败&#xff0…

linux中的dup和fcntl的用法

&#xff08;1&#xff09;dup函数&#xff1a;文件描述符的拷贝 函数头文件及函数原型&#xff1a; 参数&#xff1a;原来的文件描述符&#xff0c;新的文件描述符&#xff0c;标志位&#xff1b; 返回值&#xff1a;成功&#xff08;返回新的文件描述符&#xff09;失败&…