独立开发者系列(15)——git的使用

上一篇14文章触发了敏感话题,直接未过审核,看来技术博客也有敏感点。

大部分情况下,独立项目是你一个人开发,但是当你接的项目比较大的时候,你需要其他人的帮忙,这个时候你要把代码分享给别人。因为如果你使用一个人的FTP覆盖开发模式,会出现改动覆盖,当有三个人同时开发,更是噩梦般的存在。涉及到多人协作的时候,没有代码管理,会发现开发中一大半时间都是在扯皮互相覆盖干扰的代码。

  所幸,有代码版本管理这种东西,在十年前,git还没流行的时候,SVN是一种替代方案,但是现在基本远程都使用git。如果你能正常上网,建议使用github.com (代码样板非常多,最大的问题在于,经常卡的受不了),国内的替代方案gitee.com 。拉取代码之前,都需要安装git的客户端https://git-scm.com/downloads (选择自己对应系统安装对应客户端即可)。对于国内的项目开发而言,gitee.com已经足够使用,这里做个简单说明。

  注册好账号,新建仓库,这样就初始化了一个项目的地址。然后将项目地址,在本地某个文件目录下面,直接 git clone  XXX  刚我们自己创建的仓库地址,这样就可以拉取到本地了,如果是私有项目,我们需要登录一次我买的git账号。

   这样就完成了一个基础的git初始化项目搭建,然后我们将本地等待开发的代码放入到我们初始化的目录里面,进行俩次操作
git add .   //将代码提交到缓冲区
git push   //推送到远程仓库里面(也就是我们刚搭建的git仓库里面)

这样项目仓库完成第一步的初始化。我们每次开发代码之前,同样将别人git push的代码拉到本地,git  pull 这个时候,可以看到很多更新的代码语句。

 在最简单的情况下,这四个命令已经能完成最基础的协同开发功能。

    git的工作简单流程:
git分三个区,工作区,缓存区,提交区,正常改动代码都在工作区,如果完成本次改动,就行git  add  XX 操作就会将本次改动提交到缓存区,如果最终要推送的时候,git  push  xx 就是将改动的那个文件提交到远程服务器 .

       (2)git的常用命令小结
git 是一个工具,工具的使用是一个由新手到熟练的过程,在新手初期,我们需要掌握一些最常用的命令,可以认为90%的工作命令使用就是基本的10个命令。而要短暂的理解,只需要掌握这10个命令就完成了第一步的掌握。作为独立开发者,无需成为git专家。

Git  branch   查看当前的分支  一般做操作之前,需要看到自己在哪个分支
git checkout -b <branch-name>  创建一个分支,并切换过去  当你要从别人的分支下面开始开发,在别人的分支下面新建这个命令,这样就切换到你的分支上,然后就可以开发了。同样当需要控制版本A,但是又有B版本任务开发的时候,也适合这种操作

Git  merge  XX  合并某个分支,合并的时候,如果产生冲突,需要解决对应冲突,解决之后重新git add . git push 提交。

Git log  查看提交日志,产生冲突的时候,需要查看哪一步出现冲突,方便核对。

Git status  当前的git状态,会告诉你提交了没提交。有时候代码第二次打开的时候,你不知道你上次的代码提交了没有,需要查看下,当前哪些是等待提交的。

Git stash  临时保存修改,最典型的场景,你修改着你的代码,这个时候,产品紧急提了个需求,你不能将你没修改好的功能提交上去,但是又不能不优先处理产品的紧急需求,这个时候,你面临这个抉择,就需要git stash 来暂时储存当前的工作进度。

Git branch  --all  查看当前全部的分支,这个对于git项目的管理很重要,可以看到当前出现了多少分支, 多少人在提交。

   (3)git的可视化工具

要对比改动不同,可视化工具比命令行好用很多,除了git自带的GUI工具(相对没有那么好用)


特点是方便,但是不是那么方便使用。

可以使用乌龟Tortise,查看历史

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

23种设计模式之装饰者模式

深入理解装饰者模式 一、装饰者模式简介1.1 定义1.2 模式类型1.3 主要作用1.4 优点1.5 缺点 二、模式动机三、模式结构四、 装饰者模式的实现4.1 组件接口4.2 具体组件4.3 装饰者抽象类4.4 具体装饰者4.5 使用装饰者模式4.6 输出结果&#xff1a; 五、 应用场景5.1 图形用户界面…

vxe-table合并行数据

vxe-table合并行数据 <vxe-tableborderresizableheight"500":scroll-y"{enabled: false}":span-method"mergeRowMethod":data"tableData3"><vxe-column type"seq" width"60" /><vxe-column field&…

【WEB前端2024】3D智体编程:乔布斯3D纪念馆-第52课-语音控制机器人

【WEB前端2024】3D智体编程&#xff1a;乔布斯3D纪念馆-第52课-语音控制机器人 使用dtns.network德塔世界&#xff08;开源的智体世界引擎&#xff09;&#xff0c;策划和设计《乔布斯超大型的开源3D纪念馆》的系列教程。dtns.network是一款主要由JavaScript编写的智体世界引擎…

springboot拦截器,ThreadLocal(每个线程的公共区域)

拦截器 配置信息&#xff08;拦截所有请求&#xff09; 其实这种可以作为springAOP作日志记录

PPT文件中,母版视图与修改权限的区别

在PPT&#xff08;PowerPoint&#xff09;制作过程中&#xff0c;母版视图和修改权限是两个重要的概念&#xff0c;它们各自在演示文稿的编辑、管理和分发中扮演着不同的角色。本文将从定义、功能、使用场景及区别等方面详细探讨PPT母版视图与修改权限的异同。 PPT母版视图 定…

Python requests模块

Python中的requests是第三方模块用于实现HTTP请求&#xff0c;该模块在实现 HTTP请求时要比Python语言内置的 urllib 模块简化很多&#xff0c;操作更加人性化。在 Windows系统下使用requests 模块时需要通过在命令行窗口中执行 pip install requests 代码进行安装。 import r…

激发工作激情,积分体系深度融合任务管理,个人和团队参与度全面提升,目标完成率提高

任务&#xff0c;是总部推动新媒体矩阵的重要方式&#xff0c;总部可以联动多个团队发布多个作品&#xff0c;最终为品牌造势引流&#xff0c;过去&#xff0c;任务功能仅止步于考核&#xff0c;现在&#xff0c;任务功能新增“积分奖励”环节&#xff0c;真正实现激励到人、有…

IGBT(功率半导体)器件选型和应用

01 IGBT简介 IGBT是一种重要的功率半导体器件&#xff0c;全称为Insulated Gate Bipolar Transistor&#xff0c;中文全名为绝缘栅双极晶体管&#xff0c;是由双极型三极管&#xff08;BJT&#xff09;和绝缘栅型场效应管&#xff08;MOS&#xff09;组成的功率半导体器件&…

Python入门 2024/7/1

目录 第一个程序hello world 数据类型 注释 变量 用type类型查看数据类型 ​编辑 数据类型转换 ​编辑 标识符 运算符 字符串的三种定义方式 字符串拼接 ​编辑​编辑 字符串格式化 第一个程序hello world 区分c和python c是printf python是print print("h…

PO模式简介

V1顺序型&#xff1a;不能批量运行 import unittest from selenium import webdriver from time import sleep driver webdriver.Edge()# driver.maximize_window() driver.implicitly_wait(30) # driver.get(r"https://demo5.tp-shop.cn/") # driver.find_element…

ROS2参数通信原理

执行ros2 service list 由于没有启动任何节点&#xff0c;因此查看服务器列表为空 执行ros2 run turtlesim turtlesim_node 启动服务节点 执行ros2 service list 将返回系统中当前活动的所有服务的列表: 执行 ros2 service call /turtlesim/list_parameters rcl_interfaces/…

证件照肤色不均匀怎么处理 证件照肤色调整最简单方式 证件照肤色很白符合要求吗 证件照制作软件免费下载

在我们的日常生活中&#xff0c;证件照扮演着至关重要的角色。它不仅是身份识别的关键&#xff0c;更是我们在各种正式场合展示自己形象的重要一环。那么今天我们就来聊聊关于证件照肤色不均匀怎么处理的问题及证件照肤色调整最简单方式。 一、证件照肤色不均匀怎么处理 对于…

面试官:你了解git cherry-pick吗

事情要从一次不规范的代码开发开始说起 背景故事 时间 2024年某个风平浪静的周五晚上 地点 中国&#xff0c;北京&#xff0c;西二旗&#xff0c;某互联网大厂会议室 人物 小杰&#xff0c;小A&#xff0c;小B&#xff0c;老K 对话 老K&#xff1a;昨天提交的代码被测试打回来…

数据结构——带环链表、循环队列问题

1.带环链表问题 1.1给定一个链表判断其是否带环 解决思路&#xff1a;利用快慢指针法&#xff0c;快指针一次走两步慢指针一次走一步&#xff0c;从链表起始位置遍历链表&#xff0c;如果链表带环&#xff0c;则快慢指针一定会在环中相遇&#xff0c;否则快指针先到达链表末尾…

OpenSSH Server 远程代码执行漏洞(CVE-2024-6387)(附代码)

OpenSSH Server 远程代码执行漏洞&#xff08;CVE-2024-6387&#xff09;&#xff08;附代码&#xff09; 前言影响范围验证脚本1.python2.C? 参考链接 前言 2024年7月1日&#xff0c;OpenSSH 官方发布安全通告&#xff0c;披露CVE-2024-6387 OpenSSH Server 远程代码执行漏洞…

【084】基于SpringBoot实现的家乡特色推荐系统

系统介绍 视频演示 点击查看演示视频 基于SpringBoot实现的家乡特色推荐系统主要采用SpringBootVue进行开发&#xff0c;系统整体分为管理员、用户两种角色&#xff0c;主要功能包括首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;文章分类管理&#xff0c;文章分…

鸿蒙开发Ability Kit(程序访问控制):【对所有应用开放】

对所有应用开放 在申请目标权限前&#xff0c;建议开发者先阅读[申请应用权限]&#xff0c;对权限的工作流程有基本了解后&#xff0c;再结合以下权限字段的具体说明&#xff0c;判断应用能否申请目标权限&#xff0c;提高开发效率。 说明&#xff1a; 权限级别为normal的权限…

Sharding-JDBC分库分表的基本使用

前言 传统的小型应用通常一个项目一个数据库&#xff0c;单表的数据量在百万以内&#xff0c;对于数据库的操作不会成为系统性能的瓶颈。但是对于互联网应用&#xff0c;单表的数据量动辄上千万、上亿&#xff0c;此时通过数据库优化、索引优化等手段&#xff0c;对数据库操作…

新手教学系列——【Python开发】不同系统更换pip源的方法

在使用Python进行开发时,你可能会发现使用pip安装包的速度较慢,尤其是在国内进行操作时。为了提高安装速度,我们可以将pip的默认源更换为国内的一些镜像源。本文将详细介绍如何在不同操作系统上进行这一操作,并给出常用的国内镜像源。 为什么要换源 pip默认使用的是官方的…

嵌入式Linux系统编程 — 6.2 signal和 sigaction信号处理函数

目录 1 信号如何处理 2 signal()函数 2.1 signal()函数介绍 2.2 示例程序 3 sigaction()函数 3.1 sigaction()函数介绍 3.2 示例程序 1 信号如何处理 信号通常是发送给对应的进程&#xff0c;当信号到达后&#xff0c; 该进程需要做出相应的处理措施&#xff0c;可以通…