git基本操作(适合新手)
本人也是刚刚开始学习 大家可以一起交流,大佬可以在教一下
目录
- git配置
- git本地仓库
- SSH提交方式,git提交远程仓库
一、git配置
git config --global user.name 你的英文名
git config --global user.email 你的邮箱
git config --global push.default simple //simple必须保证本地分支和它的远程upstream分支同名,否则会拒绝push操作。
git config --global core.quotepath false //解决中文乱码问题
git config --global core.editor "code --wait" //默认文本编辑器 vscode打开
git config --global core.autocrlf input // 在提交时把CRLF转换成LF,签出时不转换
注意:上面的英文名和邮箱跟 GitHub 没有关系,可以一样也可以不一样
可能写的有问题,可自行百度6行配置的翻译
git config --gloval --list 查看配置
二、git本地仓库
新建目录 git-demo
git init // 初始化
注意:git init 只是创建 .git目录(隐藏的) 他的功能类似于快照
创建一个html文件,用来做操作
开始操作
git add index.html // 标记index.html
git status -sb // 查看需要提交的文件
A 代表git add
了
还有别的状态,后面给介绍
git commit -v //提交并且打开默认编辑器,如果git6行配置你配置了,就会打开vscode 如果没有会打开vim编辑器
静静等待你的电脑端打开vsCode
打开成功会是这样的:
会让你看到代码里那块修改了,那块删除了 可以多写一点提交理由(在第一行写)
写完保存->关闭
回滚版本
git log // 查看版本
git logo
查看一下提交过的版本信息,注意commit
版本号
git reset --hard 5ea4ce // 回滚到第一个版本
成功
在查看一下版本(git log
)
已经回到最初的版本了。
注意:回滚完了就找不到之前的版本了
这里说一个高级操作 git reflog 查看全部版本历史
(手动斜眼笑)
想回滚到那个版本都可以了
注意:运行 reset 命令前,一定要确保重要代码已经提交(commit)了,如果只是` git add `了但是没有` git commit ` 在回滚版本会丢失文件。版本号可以是6位也可以是4位只要保证是唯一的就可以
分支
git branch a // 创建a分支
会基于本地仓库里最新一次 commit,创建一个新的分支 a
git checkout a // 切换到a分支
文档改一下内容
git add
-> git commit
一下
git branch // 查看分支 带 * 号是当前分支
git branch -d x // 删除分支,x新创建的分支
如果没有合并代码,git branch -d x
会报错,如果必须删这个分支,可以使用 git branch -D x
合并分支
git merge a // 合并分支
注: 最好切换到master分支,保留主分支(master)
解决冲突
合并分支和git pull
时遇到的冲突,会报CONFLICT错误
可以使用 git status -sb
查看冲突文件
切换到a分支 修改了 h1标签里的内容导致了冲突 因为master和a分支都写了这个地方,在vscode里就会出现冲突提示
UU :2个分支都修改了此文件
vsocde会提示冲突
解决冲突的方式:
- 可以选择上面,也可以选择下面,甚至都可以选择
- 删除不需要的代码,(==== >>>> <<<<)
- 最次
git status -sb
修改下一个文件 git add
对应的文件- 没有冲突了,在commit一下
我选择了保留双方更改
三、SSH提交方式,git提交远程仓库
github创建一个仓库
接下来生成SSH
ssh-keygen -t rsa -b 4096 -C 邮箱
成功:
执行中 连续按3次回车就可以了,成功就会出现小气泡
失败
出现 Overwrite(y/n) 表示失败 请去默认保存地址去删除SSH
或者备份
- id_res 私钥
- id_rsa.pub 公钥、
自己保留私钥,gitHub设置公钥
注意:私钥不要给别人看,也不要发给别人
设置gitHub的公钥
进入默认ssh存放目录 打开 id_rsa.pub 文件 复制进 key里 然后点 Add SSH key就可以了
添加时需要验证一次密码
验证SSH
ssh -T git@github.com // 如果问你(yes/no) 输入yes回车
注:SSH和HTTPS的下载 SSH是不需要输入密码的,HTTPS是需要每次需要密码的
好了SSH的配置就结束了,现在开始提交gitHub
提交gitHub
git remote add origin git@github.com:GeFei-someone/gitdemo-2.git // 连接远程仓库
git pull origin master // 更新 提交前最好先更新一下 如果代码没有别的同事修改,就可以直接提交
git push -u origin master //提交 -u:记住这次操作 下次只需要 git push 就可以了
提交成功!!!
如果你是一个空目录 需要从github上克隆代码需要使用:
一定要切换到SSH上复制
git clone origin git@github.com:GeFei-someone/gitdemo-2.git // 克隆项目
git clone origin git@github.com:GeFei-someone/gitdemo-2.git yyy // 克隆项目并且重命名为 yyy
git clone git@github.com:feiwen1119/git-demo-1.git . // 考虑项目不重新创建目录,使用当前目录容纳代码
注:当前目录最好是空目录
成功!!!
结束语
因为没有结束语所以不写了
git基本操作(适合新手)的更多相关文章
- Git学习系列之Git基本操作克隆项目(图文详解)
不多说,直接上干货! 想必,能进来看我写的这篇博文的朋友,肯定是了解过. 比如SVN的操作吧,最常见的是 检出(Check out ...), 更新 (Update ...), 以及 提交(Commi ...
- 学习如何运用GitHub网站+出现的问题+Git基本操作总结
首先介绍一下GitHub网站: github是一个基于git的代码托管平台. GitHub 拥有一个非常鼓励合作的社区氛围.这一方面源于 GitHub 的付费模式:私有项目需要付费,而公共项目完全免费 ...
- 最适合和最不适合新手使用的几款 Linux 发行版
大多数知名的Linux发行版都属于"比较容易使用"这一类.一些观察人士可能会驳斥这个观点,但事实上,说到Linux,大多数并非从事IT或软件开发工作的人会被最容易的使用体验所吸引. ...
- git和github新手安装使用教程(三步入门)
git和github新手安装使用教程(三步入门) 对于新手来说,每次更换设备时,github的安装和配置都会耗费大量时间.主要原因是每次安装时都只关心了[怎么做],而忘记了记住[为什么].本文从操作的 ...
- python环境搭建-requests的简单安装(适合新手)
安装完python之后,一定要记住安装后的路径.这是我当前的路径. 下面是requests的安装步骤: 我们这里直接用pip安装(这样比较适合新手),新版python自带pip,python3.6.1 ...
- 关于富文本编辑器ueditor(jsp版)上传文件到阿里云OSS的简单实例,适合新手
关于富文本编辑器ueditor(jsp版)上传文件到阿里云OSS的简单实例,适合新手 本人菜鸟一枚,最近公司有需求要用到富文本编辑器,我选择的是百度的ueditor富文本编辑器,闲话不多说,进入正 ...
- Git基本操作和GtHub 特殊技巧
<GitHub 入门与实践> 笔记 了解GitHub Git 和 GitHub 的区别 在Git中,开发者将源代码存入名为"Git仓库"的资料库中,并加以使用.而Git ...
- git和github新手快速操作流程
git和github新手快速操作流程 本文主要介绍利用git版本控制将项目托管到远程仓库github上的一般性操作流程,为了给正在学习git的同学们一个小小的参考,以便更轻松的去深入学习git,本文所 ...
- 适合新手小白的UI学习路线完整版
UI设计是很多年轻人活着想转行学习的人的新职业目标,越来越多的人看到UI设计良好的就业发展前景,纷纷投入到UI设计的大军中来,想学习UI设计,很多小白并不知道从何开始学起,用什么样的方法去学习,所以今 ...
- 适合新手的web开发环境
学习web开发,环境搭建是必不可少的一个环节.你可以使用wamp一键安装包,或者使用sae.bae.gae这种PaaS平台来部署,或者安装*nix系统在本地部署. 对于一个希望体验LAMP式建站的新手 ...
随机推荐
- 微信公众号获取openid(php实例)
微信公众号获取openid 公众号获取openid的方法跟小程序获取openid其实是一样的,只是code获取的方式不一样 小程序获取code: 用户授权登录时调用wx.login即可获取到code ...
- 在linux系统中通过fw_printenv查看和设置u-boot中的环境变量
uboot下可以通过命令访问(printenv)和修改环境变量(setenv),但是如果需要在Linux系统下访问这些数据该怎么办呢?其实uboot早就帮我们想好了. 1.编译fw_printenv ...
- python3错误AttributeError: 'TestSequenceFunctions' object has no attribute 'seq'
对比了两段代码发现,原来是setUp要用用大写才能被正确引用. 修改后,代码运行成功.
- MySQL数据更新
MySQL数据更新: 导读: 该练习是本人课程学习进行整理的,若有不对,欢迎指出! 该练习没有配套的sql文件,如果需要可以看之前的文章有student表等(MySQL查询练习); 这是最后一部分练习 ...
- 我与UML相爱相杀的狗血日常
前言 该怎么说呢,在专业母亲的包办婚姻和我不得不为日后的百万家产[日后的百万年薪,我怕是在做梦]下,我和UML的婚后生活正式开始了.第一天回娘家我亓老师就给出了她最爱的编程作业.说实话,我当初以头发为 ...
- Django----短信验证接口
1.注册荣联云账号 1.1注册账号 1.2 登录即可看到开发者账号信息 1.3 添加测试账号 2.使用容联云发送代码测试 '''1. 安装容联云sdk''' pip install ronglian_ ...
- MySQL(13)---MYSQL主从复制原理
MYSQL主从复制原理 最近在做项目的时候,因为部署了 MYSQL主从复制 所以在这里记录下整个过程.这里一共会分两篇博客来写: 1.Mysql主从复制原理 2.docker部署Mysql主从复制实战 ...
- jdk版本下载
oracleJDK oracle各版本下载地址:https://www.oracle.com/technetwork/java/archive-139210.html openJDK 编译好的 ojd ...
- PyQt(Python+Qt)学习随笔:QToolBox工具箱currentItem对应的index、text、name、icon、ToolTip属性
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在Designer中,toolBox主要有如下属性: 可以看到,toolBox的属性主要是与当前项相 ...
- PyQt(Python+Qt)学习随笔:QTabWidget选项卡部件当前项类属性currentIndex、currentTabText、currentTabName、currentTabIcon介绍
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTabWidget的当前项类属性为用于访问当前操作的选项卡,包括如下属性: 1. currentI ...