HIT SC Lab1 小小的总结(主要是工具)

2023-11-12

Fine,自动机与软构实验轮番轰炸的一周,在自动机考完的晚上,写下这篇有关实验一的思考总结。

Git的使用

软构这门课提交实验的方式与以前的实验不一样,是使用github上传,因此git的使用就成了刚需。接下来讲一下本次实验中发现的几种上传方式。

1、命令行式(git组件)

这个就与Linux和Windows的cmd很像,通过输入内置命令来实现分布式仓库的管理。然后通过一系列git命令就可以实现对文件(夹)的管理。

下面展示一下成功的上传过程(来自实验报告):

把实验所需的文件git clone下来,clone下来的文件在当前cmd目录下

创建本地仓库,选在了GitHub桌面版默认位置(其实哪里都行只要git bash here):

(事实上后来我用的仓库不是这个,而是实验目录)

完事后把P2移入工作目录下,然后自动设置为package,把import文件头加上P2.前缀,否则会因为不是module而无法运行。

版本管理:git add * ,表示把所有文件加入管理,可以看出这里status有更新,且还没commit

Git log查看历史:

Submit阶段,在实验目录下右键git bash here

Git add .

Git commit -m “first commit”

git remote add origin https://github.com/ComputerScienceHIT/HIT-Lab1-120L020318.git

git -u push origin master

登陆后即可传输,结果如下。

MIT的实验界面要我们使用的是这种方法,我用的是https协议,并没有使用到ssh。然后讲一下这期间遇到的一些困难:

1、有一次修改报告时把副本一起传上去了,然后直接在GitHub上进行了delete操作,且并没有fetch回本地,因此之后几次push都不成功。当然更糟糕的是后面网络代理也出了问题,不得不使用git config将https和http删除重来再reset(顺序不太记得了,反正就这几个操作,至于代理怎么有问题,难道科学上网原因?),才得以修复。反正得到的教训就是一定得保持版本的一致,在push前一定要fetch/pull确保最新版本。

2、正常修改时,git push -u origin master时有时会抛出(初期,后期不会)fatal,这是把远端origin删除重新git remote add origin …即可。

2、GitHub桌面版上传

这个简单且粗暴,只需要你有科学上网的途径(doge),正常状况下在你首次登陆后,本地仓库都是默认建立在系统的“文档”的GitHub目录下,.git就是仓库的标志。当然也可以自己改,我就是改成了实验用的目录。

查看历史,自动检测changes,得到difference、一键push的功能也是非常好用。

3、idea上传

当然这个我没试过,不过貌似有学长和同学是这么干的,成功与否未知。只需要在VCS中启动git功能,在联系到GitHub账号,就可以通过右上角的箭头很轻松完成push。不过因为本身自己没试过,也是提供一种思路。

利用idea进行build

群里有大佬是用gradle,我仅仅是使用idea自带的功能构建jar文件。具体步骤也很简单(idea yyds),进入项目结构(project structure)-工件:

点击+号,选择具有依赖项的那个,然后选择主类,输出目录即可。生成后在jar所在目录下用命令行输入java -jar xxx.jar即可。此时需要注意JDK版本。值得小心的是,P1的幻方涉及到路径问题,因此得移到项目根目录下才有用。

还有一个细节,META-INF文件尽量放在不同文件夹下,否则可能主类会串。

Eclipse与IDEA的互通

Eclipse导入IDEA项目,workspace下打开eclipse,点击file-open projects from file system,出现下列界面后直接浏览文件夹就可以:

然后注意保持JDK的一致,在preference里compile等选项修改一下就可以。然后就是不要干idea里作为eclipse项目export的傻事,因为改变了文件结构从而出现一堆错误,最后发现居然什么都不管就可以。建议在GitHub或其他地方有之前正确版本的备份。

Idea导入eclipse:还是项目结构,这次选中模块,选中文件夹后作为eclipse项目导入。总之就挺简单的。。。

实验过程的一些教训:

1、Java的最大特色就是OOP,可以多学习一些库以达到事半功倍效果;

2、Java由于去年只有小学期四周有接触,基础语法并不是很熟练,得多加练习;

3、备份的重要性,玩脱了还可以救回来。

总之,实验一代码算法方面倒是没什么难度,主要就是工具的使用,将我印象深的内容都写在上面了,仅供参考。然后具体的一些操作步骤可能有误,因为是凭记忆写的,如有错误恳请指出!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HIT SC Lab1 小小的总结(主要是工具) 的相关文章

随机推荐

  • Ubuntu命令介绍——echo

    echo是一个非常简单 直接的linux命令 将argument送出至标准输出 STDOUT 通常就是在显示器 monitor 上输出 为了更好的理解 不如先让我们跑一下 echo 命令好了 echo 你会发现只有一个空白行 然后又回到 s
  • k8s--基础--6.1--环境搭建--多master高可用集群

    k8s 基础 6 1 环境搭建 多master高可用集群 前提 使用root用户 1 机器 主机名 IP 说明 master1 192 168 187 154 2核4G 硬盘20G 核数最小要求是2 master2 192 168 187
  • SQLite向arm板子的移植

    SQLite向arm linux的移植 SQLite是一个开源的嵌入式关系数据库 我们用它来管理从M0端接收的数据 将检测到的仓库信息存储起来 SQLite环境的建立 首先从下载最新版本的sqlite源码包 我下载的是sqlite amal
  • mac idea 使用技巧-长期更新

    公司配发了新款Mac book pro M1 以前都是使用window 版本 切换成了mac 操作idea 很多技巧需要重新掌握 现在总结文档 idea 版本 试用版 建议大家自行购买账户 idea 在Mac 环境下游多中快捷键组合 注意事
  • 最通俗易懂的nginx

    nginx 文章目录 nginx 什么是nginx nginx配置文件 正向代理 反向代理 负载均衡 动静分离 高可用 什么是nginx Nginx是一款自由的 开源的 高性能的HTTP服务器和反向代理服务器 同时也是一个IMAP POP3
  • 【STM32】单片机启动文件分析

    启动文件 启动文件由汇编语言写成 时单片机上电之后执行的第一个文件 也就是从上电到mian函数中间的一段过程 bootloader bootloader也可以叫启动文件 每种MCU都有对应的启动文件 但开发环境往往自动完整地提供了这个启动文
  • 虚拟机nat模式网卡配置

    我们的目的是 虚拟机和主机能互ping 虚拟机可以ping外网 1 设置win10防火墙 添加入站规则 2 共享无线网卡或者有线网卡给虚拟机网卡 VMnet8 3 虚拟机虚拟网络编辑 4 修改虚拟网卡vmnet8配置 5 关闭centos防
  • 史上最全树莓派安装方法

    众所粥汁 树莓派是一个只有银行卡大小的 电脑 但很多人在安装树莓派时会有疑问 我安装的对不对 系统是正版吗 怎么会出错 等等等等问题 所以今天我就带来一个树莓派使用指南 材料有 1 树莓派3b 3b 4b 2 外壳 3 网线 可选 4 显示
  • 怎么能学会做买卖步骤是什么(想做买卖赚钱应该先从什么做起)

    如何能学会做交易 办法是什么 胜利者 有本人的战略 遵照本人的战略 比方价格入股 趋向盯梢入股 套利 缠论买卖体例之类 波折者 自我买卖 情结买卖 动静炒买炒卖股票 贪嗔痴慢疑主宰你的操纵 你必需输得起 没有人 会在看了一本简略五官科手术的
  • JetBrains IDEA 系列产品通用xx方法(license server)

    若资金允许 请点击https www jetbrains com idea buy 购买正版 谢谢合作 学生凭学生证可免费申请正版授权 创业公司可5折购买正版授权 本文适用于所有 JetBrains 系列产品 方法一 最新方法 Jet Br
  • springboot+cache缓存上

    cache内容 缓存的意义 将方法的运行结果进行缓存 以后再要相同的数据 直接从缓存中获取 不用调用方法 cacheManager管理多个Cache组件 对缓存的真正操作CRUD操作在Cache组件中 每一个缓存组件有自己唯一一个名字 几个
  • FreeRTOS入门(07):流缓冲区 & 消息缓冲区

    文章目录 目的 基础说明 流缓冲区 相关函数 使用演示 消息缓冲区 相关函数 使用演示 总结 目的 缓冲区是操作系统中常见的一种用于任务间数据传递的机制 这篇文章将对FreeRTOS中相关内容做个介绍 本文代码测试环境见前面的文章 Free
  • 百度云BOS云存储的图片如何在访问时,同时进行格式转换、缩放等处理

    前言 之前做了一个图片格式转换和压缩的服务 结果太占内存 后来查到在访问图片链接时 支持进行图片压缩和格式转换 本来想着先格式转换 压缩图片再上传到BOS 现在变成了上传后 访问时进行压缩和格式转换 想了想 因为主要目的是提高用户的图片访问
  • vue2中使用vue-quill-editor实现编辑器

    1 参考文档 开发文档 https github com surmon china vue quill editor 例子 vue quill editor Homepage Surmon s projects 中文开发文档 前言 Quil
  • [机器学习 01] 回归算法-sklearn

    机器学习 回归 1 线性回归 有一组数据 x y 找出一个线性方程 使得数据到线上的距离总和最小 距离最小化 梯度下降法 最小二乘法 对于普通最小二乘的系数估计问题 其依赖于模型各项的相互独立性 当各项是相关的 且设计矩阵的各列近似线性相关
  • syntaxerror: 'return' outside function 解决办法

    出现syntaxerror return outside function是由于python对格式要求严格的原因 多半问题是由于格式对齐导致的 根据报错提示到相应的 py文件的相应行修改缩进 只需要保持缩进为1或着2个tab即可 修改后保存
  • 01.Vite 的安装和使用

    学习要点 1 Vite 简介 2 Vite 安装 本节课我们来开始了解 Vue 官方的构建工具 Vite 以及安装方式 一 Vite 简介 1 Vite 是官方从 Vue3 开始的全新的前端构建工具 官网如下 https vitejs de
  • 2021-11-18 Android APP安装后不在桌面显示图标的一个方法

    一 有时候安装一个app 不想在桌面上显示图标 而是在其他地方调出这个程序 要想在桌面不显示图标 只需注释掉APP入口Activity中的
  • EC600 QuecPython开发环境搭建、固件下载,最方便的OpenCPU物联网4G通信解决方案

    EC600 QuecPython 官方资源汇总 开发环境搭建 1 安装windows驱动 2 验证模组的固件版本 3 烧录QuecPython固件 小试QuecPython 1 查看系统信息 2 点亮V1 2开发板上的LED D6 3 UA
  • HIT SC Lab1 小小的总结(主要是工具)

    Fine 自动机与软构实验轮番轰炸的一周 在自动机考完的晚上 写下这篇有关实验一的思考总结 Git的使用 软构这门课提交实验的方式与以前的实验不一样 是使用github上传 因此git的使用就成了刚需 接下来讲一下本次实验中发现的几种上传方