Git+Gitee使用分享

Git+Gitee快速入门

创建仓库

image

image

image

初始化本地仓库

验证本地git是否安装好

打开cmd窗口,输入git

image

这样就OK。

Git 全局设置:(只需要设置一次)

这台电脑如果是第一次使用git,就需要这样初始化一下,这样才知道是谁提交到仓库了。

git config --global user.name "萌狼蓝天"
git config --global user.email "2952458479@qq.com"

创建 git 仓库:

mkdir marketplace-recommendation-system
cd marketplace-recommendation-system
git init 
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/mllt992/marketplace-recommendation-system.git
git push -u origin "master"

mkdir marketplace-recommendation-system​创建一个文件夹

cd marketplace-recommendation-system​进入这个文件夹

git init​初始化git仓库

image

touch README.md创建README.md文件,注意,则句话在windows下无效,请手动创建该文件。

image

git add README.md​将这个文件添加到仓库缓存区

git commit -m "first commit"​提交仓库缓存区内容到仓库,双引号里面的内容自定义,效果如下:

image

git remote add origin https://gitee.com/mllt992/marketplace-recommendation-system.git​本地仓库关联gitee上的仓库

git push -u origin "master"​提交缓存区文件到gitee仓库的master分支

image

image

邀请协作者

image

image

image

其他人第一次克隆仓库到本地

git clone https://gitee.com/mllt992/marketplace-recommendation-system.git

这个链接在这找到:

image

仅仅是第一次需要clone(克隆)

以后执行的都是git pull

拉取更新

git pull​获取仓库上最新的文件,更新本地的内容。

要求:

1.每次开发之前,都必须pull一下。

2.两个人不要同时修改一个文件,避免冲突,虽然冲突可以解决,但是对新人来说,懒得搞。

举个例子:

A同学本地更新了index.html文件的标题为“网站”

B同学本地更新了index.html文件的标题为“web”

A同学push了自己的代码到云仓库

B同学pull更新内容,出现冲突提示,询问:最新文件更改了index.html,你也更改了index.html,所有我应该覆盖吗,还是不覆盖呢?

B同学可以选择强制覆盖,也可以选择不覆盖,但是你这个不是懒得折腾吗,因为提示是英文的,你肯定还要去百度。

提交代码

第一步是添加更新的文件到缓存区,你可以使用下面的命令一个文件一个文件添加

git add 文件名

也可以使用下面的命令直接把所有更改的文件都添加到缓存区

git add --all .

第二步,设置备注信息

你对这个文件进行了说明修改,可以用简单的一句话说明,方便其他人查看、理解你的操作。

git commit -m "balabala"

第三步就是提交了。

image

你可以看到分支是master

所有如果你要把缓存区文件提交到master的话,就这样写

git push origin master

要求:每次更改了内容后,记得提交(push)到云仓库。

其他说明

以下说明是萌狼蓝天自己对这玩意的理解。我没有专门学过git,只是用到什么学什么,下面的算是我个人的见解和习惯,仅供参考,毫无权威。

1.时间紧迫,就先掌握着这些基础,有时间了一定要去多了解学习git操作,然后了解gitee和github。

2.遇到问题多百度,都有解决方案的。刚开始接触嘛,难免会遇到些问题,都很正常。

3.提交的备注,书写格式一般是动词开头的,比如:增加了xxx;修改了xxx;修复了xxx;优化了xxx

送上一个在线实操git的学习引导网站 https://learngitbranching.js.org/?locale=zh_CN

关于团队协作

以下内容是萌狼蓝天个人经验,仅供参考,毫无权威。

系统设计

大家一起做项目,最关键的不是怎么分配的问题,而是大家一起对这个系统设计。

毕竟分配问题,随时都可以更改分配,但是系统设计一开始就设计的不好,那搞到一半,进退两难,可就麻烦了。

设计系统是很重要,很有必要,很关键……的,我当初就是做一个资源管理系统,哎我想,那不简单吗,我脑海里有大概方向了,很快啊,我啪的一下,项目的开发到一半了,这时候我发现,我要做的某个功能缺个字段……你可别以为,哎不就是缺个字段吗,加上不就得了,你试试,试试就逝世,什么叫牵一发而动全身,给你安排的明明白白。

那么团队开发一个未知的项目,怎么样的设计是合理的?

1.每个人必须参与设计,了解所设计的每一个点,对于有歧义的地方一定要明确。我当初在带领小组做项目的时候,因为小组成员没什么经验的,所以对我提出的东西就不是很理解,但是又不提出来,只是嗯嗯好,结果任务安排好后,预期内容和我想的相差九千九百九十九万里……所以每个人都要参与设计,理解所设计的每个功能点,确保大家在统一频道交流,避免跨服交流。(团队默契)

2.功能板块以及板块之间的关系明确。你这个系统有什么功能,打算怎么去实现,哪些板块之间有什么关联关系,怎么关联在一起的。对应的数据库怎么去设计(数据库的设计,包括明确有哪些表,表之间的关联关系,每个表的字段有哪些,字段类型是什么,什么字段是主键,字段可能值是什么等等)(方向明确)

image

关于数据库设计以及命名规范,有兴趣有能力的,可以按照阿里巴巴开发规范来(PDF书籍:阿里巴巴Java开发手册嵩山版)

3.UML图,都尽量画规范一点,你千言万语,不一定能把某个功能介绍的明白,但是一个UML图,可以让人一看就明明白白。不要懒得画图,一些复杂的逻辑,最好用画图的方式梳理一遍。

4.技术架构的选择。后端用Java还是Python还是什么的,后端用什么框架,前端用什么技术,哪个版本(比如vue2,vue3,要明确版本,不能就说个vue),前端要用哪些框架,数据库要用哪些,什么功能用什么数据库,用不用redis……总之用什么,什么版本,都明确好。不要你用vue2,我用vue3……

团队设计的系统,大家都明白这个系统做什么的,有什么功能,怎么去实现,大家一起设计的数据库,大家都知道有什么字段,字段代表的含义,那么这部分就合格了,就算因为第一次合作不够默契有些东西不够完善,但还是能避免很多问题发生的。

系统设计完毕后,组长分工,让每个人都明确好接下来做什么,用什么做,参考什么规范,参考文档在哪里,不要让队员没得方向,队员没得方向就容易摆烂……

关于分工

写文这天是2022年11月29日,萌狼还没参加工作,所以我谈的分工,是小组作业软件开发项目的分工。

在分工之前,组长需要先调查组员的工作意向。

明确好每个人的意向,然后进行搭配。

尽可能的避免被分配到不喜欢,完全不合适的任务,会大大降低效率的。

当然最快的办法就是设计完系统后,直接问问他们想做哪些功能哪些板块(一定要具体到某个板块)。要是他们也不明确,你再根据他们能力和大致意向安排。

然后因为个人能力不同,不同板块难度不同,工作量不同,不要想着要完全公平,就一个练手的作业,主要是能学到什么,大家都互相帮助,不要工作轻松的做完了自己的事就不管不顾了。

image

谁负责的什么都可以记着,方便有问题有疑惑可以找到对应的人交流。也能避免摸鱼。

如果一个团队全部都是一个方向的,比如全部都只会前端,但是要做的东西涉及到后端……

那说明团队结构不合理。

所以组队的适合,就要想想卡会不会方向冲突,缺少某个方面的人

当然我个人单独做项目习惯了,所以找队友不要求很强,但是一定要服从安排,认真对待,有学习精神。不听安排纯粹是来给我添堵的,我还不如单干呢。

功能和BUG的记录

image

可以研究下这个东西怎么使用。

比如我发现了10个BUG,我跟某个人说了,那个人改了第一个就忘了后面九个

比如我发现了10个BUG,我跟某个人说了,其他人想帮忙我又要说一遍

提交到issues,就像订单一样,等着去处理,大家都看得到,大家忘了可以查,有问题可以公开交流,大家都看得到,不必我私聊跟你解释,有私聊个那个解释。

为什么不在群?巴拉巴拉,99+,翻群消息,烦,懂?

汇报时说协作

有机会的话可以谈谈小组怎么协作开发的。既然是合作的任务,团结最重要。

小组作业锻炼的是团队协作能力,如果一个团队能用好团队协作工具,明确任务计划,默契合作,这肯定是一个加分项。

你想,你的团队,有这一套专属协作流程,大家各司其事,分工明确,配合默契,效率高,开发出来的东西质量也高

而有的:大佬一个人承受了大部分痛苦,有些人完全没参与感,还有摸鱼党,摆烂党,毫无默契可言,

有的:你先开发,开发了代码发给我,我再来开发另外一部分,然后发现bug,发给你修了先,然后你又发给我,我做好了我的部分又发给第三人………

……

相关阅读

《萌狼说》2022年9月21日:思维

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

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

相关文章

centos安装MySQL 解压版完整教程(按步骤傻瓜式安装

一、卸载系统自带的 Mariadb 查看: rpm -qa|grep mariadb 卸载: rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 二、卸载 etc 目录下的 my.cnf 文件 rm -rf /etc/my.cnf 三、检查MySQL是否存在 有则先删除 #卸载mysql服务以及删除所有mysql目录 #没…

LeetCode--HOT100题(42)

目录 题目描述:108. 将有序数组转换为二叉搜索树(简单)题目接口解题思路代码 PS: 题目描述:108. 将有序数组转换为二叉搜索树(简单) 给你一个整数数组 nums ,其中元素已经按 升序 排列&#xf…

4.17 如何基于 UDP 协议实现可靠传输?

目录 QUIC 是如何实现可靠传输的? Packet Header QUIC Frame Header QUIC 是如何解决 TCP 队头阻塞问题的? 什么是TCP对头阻塞问题: HTTP/2 的队头阻塞: 没有队头阻塞的 QUIC QUIC 是如何做流量控制的? QUIC 实现流量控制…

[C#][原创]操作注册表一些注意点

C#注册表只需要引入 using Microsoft.Win32; C#注册表操作都是通过2个类Registry和RegistryKey进行所有操作。但是有些基本注意事项经常忘记,不常用就很容易忘记。 第一,打开注册表,第2个bool参数问题: RegistryKey key Regi…

DDR PHY

1.ddr phy架构 1.pub(phy unility block) 支持特性: (1)不支持SDRAM的DLL off mode (2)数据位宽是以8bit逐渐递增的(这样做的目的是因为可能支持16/32/64bit的总线位宽&#xff…

数据分析--统计学知识

描述型统计 描述统计 1.集中趋势 :众数、平均数、分位数 2.离散趋势: 极值(max)、极差(max-min)、平均差、方差、标准差、分位差 3.分布:峰泰、偏度 推理型统计 概率分布:离散型…

Java接口(interface)

接口(interface)明确了描述类被授权了哪些能力,但不会指定具体的方式。实现类(implement)一个或多个接口。–>使类完成了实现,是一种对于行为规范的准则的抽象。 个体的方法可以在子类中自写展现&#…

c语言练习题33: 判断回⽂字符串

判断回⽂字符串: 题目: 输⼊⼀个字符串,判断这个字符串是否是回⽂字符串(字符串的⻓度⼩于等于30,字符串不包含空 格),如果是回⽂字符串输出Yes,如果不是回⽂字符串输出No。 //回…

ServiceManager接收APP的跨进程Binder通信流程分析

现在一起来分析Server端接收(来自APP端)Binder数据的整个过程,还是以ServiceManager这个Server为例进行分析,这是一个至下而上的分析过程。 在分析之前先思考ServiceManager是什么?它其实是一个独立的进程,由init解析i…

Kotlin协程flow发送时间间隔debounce

Kotlin协程flow发送时间间隔debounce debounce的作用是让连续发射的数据之间间隔起来。典型的应用场景是搜索引擎里面的关键词输入,当用户输入字符时候,有时候,并不希望用户每输入任何一个单字就触发一次后台真正的查询,而是希望…

Failed to load local image resource/images/1.jpg无法加载本地图片资源

微信小程序开发无法加载本地图片 先放报错图片 绝对路径不行&#xff0c; <image src"../../images/1.jpg" mode"heightFix"></image>使用相对路径就可以了 <image src"../../images/1.jpg" mode"heightFix"><…

Fortran 微分方程求解 --ODEPACK

最近涉及到使用Fortran对微分方程求解&#xff0c;我们知道MATLAB已有内置的函数&#xff0c;比如ode家族&#xff0c;ode15s&#xff0c;对应着不同的求解办法。通过查看odepack的官方文档&#xff0c;我尝试使用了dlsode求解刚性和非刚性常微分方程组。 首先是github网址&am…

oauth2.0第2季 分布式认证与授权实现单点登录

一 oauth介绍 1.1 oauth的基础内容 1.1.1 oauth是什么 1.1.2 oauth的角色 1.1.3 oauth的认证流程 1.1.4 oauth的4种模式 1.2 为何要用oauth2.0 1.介绍单体架构 使用sesion保存会话信息的情况 2.前后端分离项目&#xff0c;调用方式 session架构不适合前后端分离项目 3…

系统架构设计高级技能 · 大数据架构设计理论与实践

系列文章目录 系统架构设计高级技能 软件架构概念、架构风格、ABSD、架构复用、DSSA&#xff08;一&#xff09;【系统架构设计师】 系统架构设计高级技能 系统质量属性与架构评估&#xff08;二&#xff09;【系统架构设计师】 系统架构设计高级技能 软件可靠性分析与设计…

初识 Redis

初识 Redis 1 认识NoSQL1.1 结构化与非结构化1.2 关联和非关联1.3 查询方式1.4. 事务1.5 总结 2 Redis 概述2.1 应用场景2.2 特性 3 Resis 全局命令4 Redis 基本数据类型4.1 String4.1.1 常用命令4.1.2 命令的时间复杂度4.1.3 使用场景 4.2 Hash4.2.1 常用命令4.2.2 命令的时间…

数据库三大范式是什么,又为什么要反范式?

&#x1f3c6;作者简介&#xff0c;黑夜开发者&#xff0c;CSDN领军人物&#xff0c;全栈领域优质创作者✌&#xff0c;CSDN博客专家&#xff0c;阿里云社区专家博主&#xff0c;2023年6月CSDN上海赛道top4。 &#x1f3c6;数年电商行业从业经验&#xff0c;历任核心研发工程师…

C++:构造方法(函数);拷贝(复制)构造函数:浅拷贝、深拷贝;析构函数。

1.构造方法(函数) 构造方法是一种特殊的成员方法&#xff0c;与其他成员方法不同: 构造方法的名字必须与类名相同&#xff1b; 无类型、可有参数、可重载 会自动生成&#xff0c;可自定义 一般形式:类名(形参)&#xff1b; 例: Stu(int age); 当用户没自定义构造方法时&…

桃子叶片病害识别(Python代码,pyTorch框架,深度卷积网络模型,很容易替换为其它模型,带有GUI识别界面)

1.分为三类 健康的桃子叶片 &#xff0c;251张 桃疮痂病一般&#xff0c;857张 桃疮痂病严重&#xff0c;770 张 2. GUI界面识别效果和predict.py识别效果如视频所示桃子叶片病害识别&#xff08;Python代码&#xff0c;pyTorch框架&#xff0c;深度卷积网络模型&#xff0…

C++对象调用优化

C对象调用优化 临时对象拷贝构造新对象&#xff0c;临时对象就不会产生&#xff01;&#xff01;&#xff01; 常见的对象调用过程 c编译器对于对象构造的优化&#xff1a;用临时对象拷贝新对象的时候&#xff0c;临时对象就不产生了&#xff0c;直接构造新对象就可以了。 …

前端高频面试题 js中堆和栈的区别和浏览器的垃圾回收机制

一、 栈(stack)和 堆(heap) 栈(stack)&#xff1a;是栈内存的简称&#xff0c;栈是自动分配相对固定大小的内存空间&#xff0c;并由系统自动释放&#xff0c;栈数据结构遵循FILO&#xff08;first in last out&#xff09;先进后出的原则&#xff0c;较为经典的就是乒乓球盒结…