首页
归档
友链
关于
Search
1
网易云音乐黑胶会员月月免费赠送
3,590 阅读
2
十年之约RSS聚合订阅服务上线
3,019 阅读
3
工资发放日的区别
2,636 阅读
4
rsyslogd内存占用过高解决方案
2,416 阅读
5
Nginx反代MinIO后,上传文件签名异常
2,227 阅读
零碎
标本
码海
工具
其他
登录
Search
标签搜索
北京
摄影
生活
旅行
Java
学习笔记
教程
Linux
服务器
软件
日记
SpringBoot
Windows
服务
数据库
福利
Spring
系统
SQL
docker
萧瑟
累计撰写
198
篇文章
累计收到
1,407
条评论
首页
栏目
零碎
标本
码海
工具
其他
页面
归档
友链
关于
搜索到
198
篇与
萧瑟
的结果
2023-06-11
EasySpider 一个可视化爬虫软件
今天给大家推荐一个可视化爬虫软件:EasySpider ,可以使用图形化界面,无代码可视化的设计和执行爬虫任务。只需要在网页上选择自己想要爬的内容并根据提示框操作即可完成爬虫设计和执行。同时软件还可以单独以命令行的方式进行执行,从而可以很方便的嵌入到其他系统中。这个开源项目超级好用,star 数近万,非常受欢迎;一个不需要写代码,几分钟设计一个爬虫的开源、免费、无广告的开源项目。特点开源免费无广告,代码开源,软件所有功能均免费(商用除外),且没有任何弹窗和外部广告。跨平台,软件可以在 Windows,MacOS 和 Linux 上运行。快速,一个爬虫任务只需要 2-5 分钟即可设计完成,采集时支持并行多开,因此保证了采集速度。安全,不需要注册,所有任务和数据均保存在本地,不经过任何第三方服务器。灵活,可任意添加浏览器插件,任意执行 JavaScript 指令和调用系统外部程序。命令行执行,直接以命令行的方式执行任务,无缝嵌入到其他程序中。元素截图和 OCR 识别,支持元素截图和 OCR 识别,以及图片下载。定时执行,支持定时执行任务,成为贴心生活小助手。运行效果 这个开源项目还非常人性化提供了爬虫案例以及使用视频教程。软件下载{cloud title="Github仓库" type="github" url="https://github.com/NaiboWang/EasySpider" password=""/}{cloud title="GitHub最新版" type="github" url="https://github.com/NaiboWang/EasySpider/releases" password=""/}{cloud title="国内高速下载" type="default" url="https://github.com/NaiboWang/EasySpider/releases/download/v0.3.2/Download_Link_Address_in_China_Mainland.txt" password=""/}
2023年06月11日
697 阅读
7 评论
2023-06-08
Joe 主题对接腾讯 LBS 展示 IP 属地(二)
书接上回,我们在主题中对接腾讯LBS IP查询服务后,会有一个bug:如果某篇文章评论过多,则某些评论IP定位数据无法显示,这个是因为腾讯LBS服务个人开发者的并发量限制为5次/秒。在上一个教程发布后,也有大佬发现了这个问题,不过这个问题我顺手就解决了,但是解决方案没有分享出来,因为需要改typecho系统的代码。这个已经脱离技术小白的范围,请合理折腾,折腾前记得备份数据。{anote icon="fa-internet-explorer" href="https://blog.yanqingshan.com/130.html" type="success" content="Joe 主题对接腾讯 LBS 展示 IP 属地"/}原理这一次折腾的原理是,我们在数据库中添加一个字段作为IP属地信息的一个冗余信息;当用户评论时,获取用户IP地址,调用腾讯LBS服务进行查询,将查询到的数据写入数据库中,这样就避免并发量超出限制。执行sql语句23.06.10:根据Typecho数据库设计文档又更新了一下sql语句ALTER TABLE `typecho_comments` ADD COLUMN `ipRegion` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'IP中文地址' AFTER `parent`, DROP PRIMARY KEY, ADD PRIMARY KEY (`coid`) USING BTREE;上面sql就是在字段coid后增加一个ipRegion的字段,并且添加一个备注信息。修改代码我们打开网站根目录,路径:/var/Widget/Base/Comments.php 这个文件是系统评论对外提供的方法,包括插入数据和查询数据等方法,有能力的同学,可以翻翻代码,基本上面都有注释;大概55行,也就是增加评论 的方法首行,增加以下代码,将key和sign_key修改为自己申请的就可以。$ipRegion = ''; $cip = empty($comment['ip']) ? $this->request->getIp() : $comment['ip']; $key = '配置自己申请的key'; //签名校验的KEY $sign_key = '配置自己申请的sign_key'; $sign = md5('/ws/location/v1/ip?ip='.$cip.'&key='.$key.$sign_key); $url = 'https://apis.map.qq.com/ws/location/v1/ip?ip='.$cip.'&key='.$key.'&sig='.$sign; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_HTTPGET, true); curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'); $content = curl_exec($ch); curl_close($ch); if($content) { $json = json_decode($content,true); if($json['status'] == 0 ){ $resjson = $json['result']['ad_info']; if($resjson['nation'] == '中国'){ if($resjson['province']=='北京市'||$resjson['province']=='天津市'||$resjson['province']=='上海市'||$resjson['province']=='重庆市'){ $ipRegion = $resjson['city']; }else{ $ipRegion = $resjson['province'].$resjson['city']; } }else{ $ipRegion = $resjson['nation'].$resjson['province'].$resjson['city'].$resjson['district']; } } }上面代码增加完后,大概在108行,也就是构建插入结构 那行注释里面增加一个参数,把下面代码放在[]中,'ipRegion' => $ipRegion, 在381行后,插入下面,这个就是把查询对象增加一个输出值'table.comments.ipRegion'基本上请求和写入已经完成,我们再改一下后台管理界面,把这个ip属地也添加到页面上,这样后台也方便查询打开admin/manage-comments.php136行后增加以下代码<br /><span><?php $comments->ipRegion(); ?>最后我们再来修改主题的评论,这里以Joe主题为例文件路径joe/public/comment.php<?php $comments->ipRegion(); ?> 找到合适位置显示IP属地,我是放在112行的<div class="agent"> <?php $comments->ipRegion(); ?> <?php _getAgentOS($comments->agent); ?> · <?php _getAgentBrowser($comments->agent); ?> </div>最终效果如下
2023年06月08日
360 阅读
7 评论
2023-05-24
麦聪SQL Studio Web端数据库管理工具
之前看公众号上推荐了一款Web端的数据库管理工具,它就是麦聪SQL Studio,为什么我要找一款Web端的管理工具,因为类似Navicat之类比较好用的工具都需要收费,且使用破解,有律师函风险,所以需要一款好用的软件,且这款软件支持web端,Web端管理简单,可以协同使用,一个人配置了,其他人也是可以使用,还可以配置账号,数据也可以进行隔离。废话不多说,先上部署教程。这款软件是使用Java语言开发,所以需要JDK环境。官方支持Windows、Mac、Linux,这里Windows、Mac,就不就是跟之前客户端一样,使用它的自带脚本就可以启动,启动后也是Web端,开放端口也是可以多用户使用,既然是Web端,肯定得部署到服务器上比较方便一些,也不用关机之类,部署到外网,还能远程使用,很方便。本次教程服务器已经配置过JDK环境了,直接下载无SDK版本,具体需要看自己服务器环境;{cloud title="官方下载" type="default" url="http://www.maicongs.com/#/home/probation/studio" password=""/}直接下载 Linux 版本,无SDK版本,上传到服务器进行解压unzip -O CP936 sqlstudio_linux_no_jdk_1.6.0.zip cd sqlstudio ./maicong-sqlstudio.sh start _ _ _ __ ___ __ _(_) ___ ___ _ __ __ _ __| | __ _ __ _ ___ | '_ ` _ \ / _` | |/ __/ _ \| '_ \ / _` | / _` |/ _` |/ _` / __| | | | | | | (_| | | (_| (_) | | | | (_| | | (_| | (_| | (_| \__ \ |_| |_| |_|\__,_|_|\___\___/|_| |_|\__, | \__,_|\__,_|\__,_|___/ |___/ maicong-sqlstudio server is started JAVA_OPTS: -server -Xms256m -Xmx4g -XX:+UseG1GC -XX:+UseStringDeduplication -Xloggc:./log/maicong-sqlstudio-gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./log/maicong-sqlstudio-heapdump -Dfile.encoding=utf-8 please waiting start看到上面这个画面,服务已经启动了,访问http://ip:18888 即可访问到服务,首次登录用户名为固定的maicong,密码可自己设置,后续可在个人中心里修改。 该工具支持的数据源还是挺多的,Oracle、PostgreSQL、MySQL、SQLite、SQL Server(Beta)、DM、KingBase、MongoDB(Beta)、Impala九种。本文以MySQL为例,输入ip地址和账户密码点击“测试连接”,会提示是否成功。然后点击左侧logo,返回首页,即可查看已添加的数据源。右击数据源,点击新建查询,就可以使用。这个软件还是很实用的,基本上可以替代Navicat作为开发使用。{cloud title="官方下载" type="default" url="http://www.maicongs.com/#/home/probation/studio" password=""/}题外话最近阿里巴巴也出了一款Web端管理工具,也是一款开源软件,跟今日分享的差不多,它是“Chat2DB”,只不过体验了一下,感觉还是差点意思,等待它后续更新吧,不过它集成了chatpgt,有兴趣的可以体验一下。后续如果更新好用的话,我再来水一篇文章。项目地址:https://github.com/alibaba/Chat2DB
2023年05月24日
507 阅读
1 评论
2023-05-07
再见,我的大玩具
时隔一年,陪伴我一年的大玩具也离开了我,自从入了摩友圈,经常刷抖音看到,各种摩友博主惨淡离世,我家小可爱也每每提醒我要慢点。所以经过思索,把这个车转手卖了,总里程不到6000公里。买家也很实在,差不多1.3W收了我的22款魅影255S,而我新的石油版画也才贴不就,真是可惜了。过户其实也很简单,买方觉得繁琐,后来找了黄牛,花了450,如果自己去办的话,差不多300左右就能解决。卖完车后,群里的小伙伴也经常喊我去跑山踏春。车卖了不到一周,又去车行看了看车,原本想入手川崎400,谁知钱包羞涩,跟小可爱谈了谈,最后入手了蒙娜丽莎melalisa150,这个踏板我家小可爱也是可以骑的,算是双赢。这次入手的是火星灰/黄这款,极限速度能跑到105km/h,买车当天车直接骑走了,车行直接去拿了个临牌。简单记录一下,作为生活中的流水账。
2023年05月07日
558 阅读
44 评论
2023-04-28
Java 使用JDBC备份数据库中的表和数据
实现思路加载数据库驱动程序并建立数据库连接。使用JDBC API查询需要备份的表格和数据。在输出文件中以适当的格式编写SQL语句来创建表格。用适当的格式编写INSERT语句将行数据写入输出文件。5. 关闭所有数据库连接和输出文件。实现代码package com.yanqingshan.admin.jdbc; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import java.io.FileWriter; import java.io.IOException; import java.sql.*; import java.util.ArrayList; import java.util.List; /** * 通过JDBC备份 库表数据 * * @author yanqs * @date 2023年04月28日 9:31 */ @Slf4j @SpringBootTest class BuildSql { @Test void testBuildSql() throws ClassNotFoundException, SQLException, IOException { String dbUrl = "jdbc:mysql://192.168.57.110:3306/boot-startup"; String username = "test"; String password = "123456"; // 加载JDBC驱动程序 Class.forName("com.mysql.cj.jdbc.Driver"); // 建立数据库连接 Connection conn = DriverManager.getConnection(dbUrl, username, password); // 创建Statement对象 Statement stmt = conn.createStatement(); // 查询所有表格名字 ResultSet result = stmt.executeQuery("SHOW TABLES"); // 备份的SQL文件 FileWriter writer = new FileWriter("backup.sql"); // 循环遍历所有表 存表 List<String> tableNameList = new ArrayList<>(); while (result.next()) { tableNameList.add(result.getString(1)); } for (String tableName : tableNameList) { log.info("开始备份“{}”表结构", tableName); // 在输出文件中写入创建表格SQL语句 ResultSet rs = stmt.executeQuery("SHOW CREATE TABLE " + tableName); if (rs.next()) { writer.write("\n\n" + rs.getString(2) + ";\n\n"); } // 循环遍历表格中的所有行来写入数据 rs = stmt.executeQuery("SELECT * FROM " + tableName); int columnCount = rs.getMetaData().getColumnCount(); log.info("开始生成“{}”表数据", tableName); while (rs.next()) { writer.write("INSERT INTO " + tableName + " VALUES ("); for (int i = 1; i <= columnCount; i++) { writer.write("'" + rs.getString(i) + "'"); if (i < columnCount) { writer.write(","); } } writer.write(");\n"); } } // 关闭所有连接 writer.close(); result.close(); stmt.close(); conn.close(); log.info("备份完成"); } }实现效果
2023年04月28日
209 阅读
4 评论
2023-04-23
Java+Selenium学习笔记
Selenium介绍Selenium是一个用于Web应用程序自动化测试工具,背后有google 维护源代码,支持全部主流浏览器,支持主流的编程语言,包括:java,Python,C#,PHP,Ruby等特点开源、免费多浏览器支持:FireFox、Chrome、IE、Opera、Edge;多平台支持:Linux、Windows、MAC;多语言支持:Java、Python、Ruby、C#、JavaScript、C++;对Web页面有良好的支持;简单(API 简单)、灵活(用开发语言驱动);支持分布式测试用例执行。chromeDriver驱动下载:http://chromedriver.storage.googleapis.com/index.html下载的驱动要和自己安装的谷歌浏览器版本相互匹配项目依赖包最新版可以在mvnrepository查找,链接如下<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java --> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>${selenium.version }</version> </dependency> 使用手册1 导航1.1 打开网页driver.get("https://www.baidu.com") driver.navigate.to("https://www.baidu.com") // 区别:get是有逻辑的跳转,而navigate.to是直接跳转到该页面,没有任何逻辑 // 参考:https://blog.csdn.net/gaokao2011/article/details/171699691.2 获取当前页面url//返回的是字符串 String url = driver.getCurrentUrl(); //https://www.baidu.com System.out.println(url); 1.3 返回上一页driver.navigate.back();1.4 前进下一页面driver.navigate.forward();1.5 刷新当前页面driver.navigate.refresh();1.6 获取当前页面的titleString title = driver.getTitle(); //返回字符串 System.out.println(title); //百度一下,你就知道2 窗口、Tabs当driver打开一个新窗口时,若想操作新窗口上的元素,则需要将driver切换到新窗口2.1 获取当前窗口句柄//返回字符串 String currentWindowHandle = driver.getWindowHandle();2.2 获取所有窗口句柄//返回字符串集合 Set<String> allWindowHandles = driver.getWindowHandles(); 2.3 切换到新窗口//newHandle为要切换的新窗口的句柄 driver.switchTo().window(newHandle); 2.4 关闭窗口或tabsdriver.close();2.5 会话结束时退出浏览器driver.quit();3 Frames and IFrames当页面上有iframe和frame元素时,若想操作iframe和frame下的html元素,则需要切换driver3.1 切换到指定iframe或frameWebElement element_iframe = driver.findElement(By.id("iframe1")); driver.switchTo().frame(element_iframe);3.2 切换回父页面driver.switchTo().defaultContent();4 window管理4.1 获取窗口大小int width = driver.manage().window().getSize().getWidth(); int height = driver.manage().window().getSize().getHeight(); Dimension size = driver.manage().window().getSize(); int width = size.getWidth(); int height = size.getHeight();4.2 设置窗口大小driver.manage().window().setSize(new Dimension(1024,768));4.3 获取窗口位置int x = driver.manage().window().getPosition().getX(); int y = driver.manage().window().getPosition().getY(); Point position = driver.manage().window().getPosition(); int x = position.getX(); int y = position.getY();5 设置窗口5.1 设置窗口位置driver.manage().window().setPositon(new Point(0,0));5.2 最大化窗口driver.manage().window().maximize();5.3 全屏窗口driver.manage().window().fullscreen();6 定位driver.find 或 element.findfindElement(By.id("XXX")) findElement(By.name("XXX")) findElement(By.className("XXX")) findElement(By.cssSelector("XXX")) findElement(By.linkText("XXX")) findElement(By.partialLinkText("XXX")) findElement(By.tagName("XXX")) findElement(By.xpath("XXX")) findElements(By.id("XXX")) findElements(By.name("XXX")) findElements(By.className("XXX")) findElements(By.cssSelector("XXX")) findElements(By.linkText("XXX")) findElements(By.partialLinkText("XXX")) findElements(By.tagName("XXX")) findElements(By.xpath("XXX"))7 执行js脚本//声明一个js执行器 JavascriptExecutor js = (JavascriptExecutor) driver; js.executeScript("alert(123)");
2023年04月23日
223 阅读
0 评论
2023-03-22
癸卯年甲寅月塞北之旅
偶然间看到12306铁路会员还有100多会员积分要到期了,准备换张周边火车票,来场说走就走的旅行,考虑了几个地方,天津去了好几趟,石家庄没什么玩的地方,张家口滑雪又怕摔,想来初春可以去草原逛逛。就定了去乌兰察布的行程。{dplayer src="https://blog.yanqingshan.com/usr/upload/2023/03/20230305.mp4"/}在“马蜂窝”上看到乌兰察布有火山,景色也不错。但是交通不是很方便,就准备了租车玩耍,行程攻略写了一些,然后就因为工作繁忙,没有下文了,每次都说走就走,不要攻略也罢,走到那算那。乌兰察布内蒙古有条火山喷发带:北起大兴安岭北段东坡的诺敏河火山群,经大兴安岭的阿尔山—柴河火山群、锡林浩特—阿巴嘎火山群,南抵察哈尔右翼后旗的乌兰哈达火山群,绵延近千公里,其中乌兰哈达火山群直到2012年才被国内外火山学界所知。这条火山带最突出的特点就是年轻:从第四纪的晚更新世(大约12万年前)才进入活动鼎盛期。但其实,这个火山带的大多数火山都喷发于距今4万—6万年前。尤其可贵的是,其中一些火山喷发于全新世,即距今一万年前,在这里甚至还发现了喷发于两千年前的火山。{callout color="#ef584d"}PS:来这里建议自驾,因为交通不便,租车也比较便宜。{/callout}沿着草原一路前行,翻过几座山,就来到了呼和浩特。呼和浩特塞上老街位于呼和浩特市大南街大召寺附近,是条具有明清建筑风格的古街。其兴建于明万历年间的大召,门前西侧有一条横街,立了牌楼,名为塞上老街。老街其实不老,塞上老街是市政府花两年时间重新修缮,体现历史文化名城亮点的一条街道。因为是晚上去的,吃了一些小吃,逛了逛,人并不是很多。羊肉串口感也不错。旁边就是大召寺,但是晚上关门了,也就没去看看,听说很宏伟。第二天就去了内蒙古博物馆,这个是全区唯一的自治区级综合性博物馆,也是全国少数民族地区最早建立的博物馆。内蒙古博物馆的展厅大楼造型别致,极具民族特色;楼顶塑有凌空奔驰的骏马,象征着内蒙古的吉祥与腾飞,是自治区标志性建筑之一。博物院的展厅大楼有四层,其中二、三、四层用于展览服务。院内目前有四个基本陈列,分别是《内蒙古古生物化石陈列》、《内蒙古历史文物陈列》、《内蒙古民族文物陈列》、《内蒙古革命文物陈列》。下午就着手回京了,两天一夜内蒙之旅到此完结,等再过段时间,再去逛逛大草原,吃上一只烤全羊,应该会更爽。
2023年03月22日
243 阅读
16 评论
2023-03-14
癸卯年初春安四路跑山小记
春天即将到来,天气也逐渐暖和起来了,喊上“京魅摩友小分队”一起踏春跑山。简单分享一下周末骑行之旅,两天大概跑了200公里。银山塔林(220311)银山塔林位于北京昌平区安四路,因岩壁色黑如铁,山上积雪如银,又称为铁壁银山,主峰最高处为726米,虽然海拔不高,但是山型陡峭,山道弯折坡度较陡,景区内最著名的景点是塔林,塔林大多建议辽、金时期,有喇嘛塔也称为覆钵塔,还有密檐塔。银山塔林位于京城正北,是国务院公布的全国重点文物保护单位,也是八达岭、十三陵风景名胜区的重点文物景点。银山——因秋去冰雪层积而得名,又因山岩陡峭,岩壁色黑如铁,称为“铁壁”,合称“银山铁壁”。为明清时期“燕京八景”之一。据考证,辽代于山前建有宝岩寺,金天会三年(公元1125年)改建为大延圣寺。寺内有金代密檐式砖塔五座,元代喇嘛塔两座,寺外山麓上也建造了许多形制各异的僧塔,是为银山塔林。银山南麓有众多古塔立于峡谷之间,最壮观的是华禅寺内的金代佛塔。 现在只剩下七座比较大的佛塔,矗立在山脚下。安四路 观景台
2023年03月14日
541 阅读
19 评论
2023-02-18
svn迁移git仓库教程
项目交付、版本管理工具变更等情况下,迁移svn旧历史记录有很大必要,方便后续追踪文件的提交历史,文件修改记录比对等。git自带了从svn迁移至git的工具命令,可很好的对svn上的提交历史做迁移和映射,操作简单方便。但是初次接触不熟练,这里做一个总结和记录,内容尽量简单化。争取提供给刚刚接触git和准备迁移的用户一个简单易懂的方案。迁移流程图迁移教程这里分为两步来说明,第一步是比较简单迁移要件准备,已经准备好的用户可直接略过,直接进入第二步进行迁移操作。第一步:准备工作:① svn项目(SvnProject)地址及访问此svn项目权限账号: 地址:https://mytest.cn/svn/project/Example/ SvnProject / 账号:test/test@123② git新建一个仓库(如:GitProject)存放迁移项目 远程仓库地址:https://192.165.22.33/migrate/GitProject 账号/密码: my_test/mytest@123③ 待迁移svn项目有过提交记录的用户清单:如果具备①的svn账号又没有svn管理员权限,可以通过导出所有提交历史并用代码提取一下用户清单(开发人员都懂,不赘述)。获取到的用户清单为user1,user2,user3。创建文件users.txt,按如下格式存入svn账号与git账号的映射关系,“=”前为svn账号,“=”号后为git账号,尖括号为git用户的邮箱,尖括号及邮箱可无。注:如果有些用户已经离职了,其账号在git中没有,这里依然可以映射至不存在的git用户。如果SVN用户未全部列举,执行迁移时会报如下错误:报这个错误时可简单粗暴删除文件夹重新导出即可。④ :电脑上安装git客户端,客户端下载地址:https://www.git-scm.com/download/下载后安装客户端,安装及配置参考:https://blog.csdn.net/u013295518/article/details/78746007第二步:数据迁移一:导出svn记录到本地在你存放users.txt的同级目录新建一个文件,命名为你的项目名:GitProject右键文件空白处,单击Git Bash Here在bash界面,输入git拷贝命令:git svn clone https://mytest.cn/svn/project/Example/MyProject/ --no-metadata --authors-file=users.txt GitProject参数说明:git svn clone 是Git的迁移命令https://mytest.cn/svn/project/Example/MyProject/是svn服务器地址,注意需要到迁移项目的根目录一级--no-metadata 参数去除了svn上很多杂乱的参数信息,保留了清晰简洁的提交记录信息。-file=users.txt 为你的用户映射文件夹;GitProject是刚刚新建的空白项目名文件夹第一次操作,会多次要求账号密码:请注意每次提示信息,第一次密码输入是操作系统的用户密码,第二次为svn账号和密码,第三次为git的账号密码。注意按提示输入。第三步:关联git远程仓库执行cd GitProject进入迁移项目路径下:执行:git remote add origin
[email protected]
:migrate/GitProject.git后即已关联远程git仓库,执行可查看关联情况git remote –v未关联时:关联成功后:如果关联错了,可以使用 git remote rm origin删除错位关联后重新关联即可 git remote rm origin第四步:提交记录至gitsvn项目中的所有提交记录和历史版本都已经导出本地并关联了远程仓库,现在只需要将这些记录推送至远程仓库即可。执行git push -u origin master命令输入后需要输入git账号\密码执行成功后,就完成了整个迁移过程。登录git网站,可以看到空白仓库中多了很多提交记录和文件。引用资料:svn 迁移至git操作手册github推送项目常见错误fatal: remote origin already exists0Git 与其他系统 - Git 与 Subversion
2023年02月18日
227 阅读
4 评论
2023-02-12
Navicat Premium 16无限试用教程
Navicat Premium 16 Windows版无限试用教程,本文脚本为技术探索,请勿牟利!!! 请支持正版!!!
2023年02月12日
520 阅读
5 评论
1
...
5
6
7
...
20