git init
一个本地仓库设置完成
如果把文件夹删了 再git init的话 相当于另一个本地仓库了
设置自己的姓名和邮箱:
全局设定(设置完后本机全部生效)不局限于单个git文件夹
标识我的本机:
git config --global user.name "wkx" 本机电脑
git config --global user.name "wkx1" 服务器电脑
git config --global user.email "1217345421@qq.com" 本机邮箱
git config --global user.email "1661483886@qq.com" 服务器邮箱
本地公钥
生成公钥:ssh-keygen -t rsa -C 1217345421@qq.com
一路回车
显示公钥:cat ~/.ssh/id_rsa.pub
公钥是为了和远程仓库建立免密连接使用的
工作区
就是你在电脑里能看到的目录,电脑上任何一个文件夹都叫工作区 ,
提交到版本库后,再次修改了的也是工作区的内容
版本库
工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,
还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。

git config --list :查看当前在git中的所有设定,如查看用户名和邮箱
git config --global alias.st status
git config --global alias.ci commit 这两句的功能:以后输入git指令时可用ci代替commit 、st代替status;
git status :
可以让我们时刻掌握仓库当前的状态 , 比如有多少文件在工作区 , 有多少文件在暂存区 , 有多少文件已经被commit到当前分支了

git add a.txt //将a.txt从工作区提交到暂存区
我们可以git add 一个文件
也可以git add . :将工作区的所有文件添加到暂存区
git commit -m"注释"
commit 是将暂存区的内容放入到当前分支, 必须加注释 , 方便查看日志信息 , 后面回退版本和回到未来版本时需要使用 注意commit是一次性将暂存区的所有内容添加到当前分支
git diff readme.txt //diff可以知道我们在上一次做了哪些修改
小结:先使用gti status查看哪些文件被修改了 然后用git diff查看修改的内容
git log 查看版本详细信息
命令显示从最近到最远的提交日志, 如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数:

git reflog 查看版本信息(不详细) ---方便版本穿梭使用
版本穿梭
git reset --hard HEAD^ //回退到上一个版本
git reset --hard HEAD^^ //回退到上两个版本
git reset --hard HEAD~5 //向前回退五个版本
回退完成后,git log 当前最新版本就是回退后的版本
穿梭未来:git reset --hard 1094a32 // 版本号没必要写全,前几位就可以了,Git会自动去找
小结
git diff HEAD -- readme.txt //可以查看工作区和版本库里面最新版本的区别:
这里的版本库特指当前分支,如果我们只将数据提交到了暂存区 , 是不加以区分的
用途 : 提交到当前分支之后 , 又对当前文件进行了修改 且未提交到暂存区
git checkout -- readme.txt
把readme.txt文件在工作区的修改全部撤销
文件里可能有在暂存区的内容,也有在工作区的内容 我们只可以撤销(删除)在工作区的内容
现在文件内容不在工作区了 , 已经被提交到了暂存区
git reset HEAD readme.txt //可以把暂存区的修改撤销掉 , 重新放回工作区
假如文件都不在暂存区了 已经提交到了版本库(当前分支) 那就回退版本
只要不提交到远程仓库 就有退路
总结 : 工作区的内容使用checkout直接撤销 ---- 暂存区的内容使用reset 撤销回工作区 然后撤销 --- 版本库的内容就退版本
当我们把已经提交到版本库的文件删除了之后,
git status命令会立刻告诉你哪些文件被删除了:
第一个选择:
确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:
git rm test.txt
git commit -m "remove test.txt"
第二个选择 , 我们删错了 想要让它回来
git checkout -- test.txt //其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
注意:从来没有被添加到版本库就被删除的文件,是无法恢复的!
git branch 分支名 //创建分支
git branch -v //查看所有分支 ,当前分支带*
git checkout 分支名 //切换分支
git merge 分支名 //把指定的分支合并到当前分支上
正常合并--无冲突
冲突合并--

给远程链接起一个别名
//给链接为https://github.com/wkxwkxwkx/wxystupid.git的远程仓库起一个别名wxy
git remote add wxy https://github.com/wkxwkxwkx/wxystupid.git //这样我们以后在push和pull的时候就可以使用wxy来代替远程链接
git remote -v
wxy https://github.com/wkxwkxwkx/wxystupid.git (fetch)
wxy https://github.com/wkxwkxwkx/wxystupid.git (push)
// 将本地master分支的内容推送到wxy远程仓库
git push wxy master
//拉取wxy远程库的master分支内容到本地
git pull wxy master
克隆远程仓库代码到本地
clone后会自动为远程连接创建别名为orgin
origin https://github.com/wkxwkxwkx/wxystupid.git (fetch)
origin https://github.com/wkxwkxwkx/wxystupid.git (push)
//将本地master分支push到origin远程仓库 ,因为origin为clone时自动为远程仓库创建的别名
git push origin master
使用idea初始化一个git本地仓库

默认选中当前文件夹

将项目添加到暂存区

提交到本地仓库
版本切换多次提交到本地仓库之后,我们可以查看历史日志
此时我们点击想要回退到的版本,选择Checkout Revision版本号即可(可以回退,自然也可穿梭到未来,做法都相同)
分支操作创建一个分支
创建成功,并切换

分支合并--当在dev分支写了代码,且master分支没有操作的时候,进行普通合并操作
操作方法:回到master分支,点击当前分支,选择dev分之,然后选择Merge Selected into Current
冲突合并操作:合并前,dev分支和master分支都有操作,且都提交到了本地仓库
回到master分支,和之前操作一样
如果提示:Your local changes would be overwritten by merge. Commit, stash or revert them to proceed.
就先存储我们的修改:

然后继续进行合并:点击 Conflicts框里的 Merge按钮,进行手动合并代码。


合并成功
idea集成github通过token添加github仓库
当将代码存储到本地仓库时,可以直接分享到github,远程仓库会自动创建

push操作:
与github链接默认为https,我们在push时可以选择自定义url,将刚才创建的仓库的ssh链接添加进来

注意:push 是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,
push 的操作是会被拒绝的。也就是说,要想 push 成功,一定要保证本地库的版本要比远程 库的版本高!因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地 代码的区别!如果本地的代码版本已经落后,切记要先 pull 拉取一下远程库的代码,将本地 代码更新到最新以后,然后再修改,提交,推送!
pull操作
pull 是拉取远端仓库代码到本地,如果远程库代码和本地库代码不一致,会自动
合并,如果自动合并失败,还会涉及到手动解决冲突的问题。所以我们在pull之前,尽量不要将本地代码commit到本地仓库
clone操作


目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称
最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal
在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主
@作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors 1、什么是behaviors 2、behaviors的工作方式 3、创建behavior 4、导入并使用behavior 5、behavior中所有可用的节点 6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors 1、什么是behaviorsbehaviors是小程序中,用于实现
文章目录git常用命令(简介,详细参数往下看)Git提交代码步骤gitpullgitstatusgitaddgitcommitgitpushgit代码冲突合并问题方法一:放弃本地代码方法二:合并代码常用命令以及详细参数gitadd将文件添加到仓库:gitdiff比较文件异同gitlog查看历史记录gitreset代码回滚版本库相关操作远程仓库相关操作分支相关操作创建分支查看分支:gitbranch合并分支:gitmerge删除分支:gitbranch-ddev查看分支合并图:gitlog–graph–pretty=oneline–abbrev-commit撤消某次提交git用户名密码相关配置g
遍历文件夹我们通常是使用递归进行操作,这种方式比较简单,也比较容易理解。本文为大家介绍另一种不使用递归的方式,由于没有使用递归,只用到了循环和集合,所以效率更高一些!一、使用递归遍历文件夹整体思路1、使用File封装初始目录,2、打印这个目录3、获取这个目录下所有的子文件和子目录的数组。4、遍历这个数组,取出每个File对象4-1、如果File是否是一个文件,打印4-2、否则就是一个目录,递归调用代码实现publicclassSearchFile{publicstaticvoidmain(String[]args){//初始目录Filedir=newFile("d:/Dev");Datebeg
ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear
我完全不是程序员,正在学习使用Ruby和Rails框架进行编程。我目前正在使用Ruby1.8.7和Rails3.0.3,但我想知道我是否应该升级到Ruby1.9,因为我真的没有任何升级的“遗留”成本。缺点是什么?我是否会遇到与普通gem的兼容性问题,或者甚至其他我不太了解甚至无法预料的问题? 最佳答案 你应该升级。不要坚持从1.8.7开始。如果您发现不支持1.9.2的gem,请避免使用它们(因为它们很可能不被维护)。如果您对gem是否兼容1.9.2有任何疑问,您可以在以下位置查看:http://www.railsplugins.or
关于如何使用git设置类似Dropbox的服务,您有什么建议吗?您认为git是解决此问题的合适工具吗?我在考虑使用git+rush解决方案,你觉得怎么样? 最佳答案 检查这个开源项目:https://github.com/hbons/SparkleShare来自项目的自述文件:Howdoesitwork?SparkleSharecreatesaspecialfolderonyourcomputer.Youcanaddremotelyhostedfolders(or"projects")tothisfolder.Theseprojec