Git本地项目开发流程记录

  1. 背景
    基于Git Bash本地创建项目,了解Git项目开发的基本流程,便于管理和记录算法开发流程,规范代码结构。
  2. 相关概念
    Git分区:工作区,缓存区,版本区。工作区即代码开发的本地文件,缓存区为使用Git add后添加到Git缓存的文件,版本区指使用Git commit添加到仓库的文件。
  3. 项目开发
    初始化项目工作区:git init
    添加文件到缓存区:git add filename (添加所有文件:git add .)
    添加备注信息到版本区:git commit -m “commit info”
    状态查询(查看分支是否更新完成):git status
    (可选的:版本区打标:git tag)
  4. 项目管理
    1. 分支管理
    创建分支:git checkout branchname
    合并分支(branch2合并到branch1): (branch1) git merge branch2
    删除分支(在其他分支删除branch2): (branch1) git checkouot -d branch2
    2. 日志管理
    查看日志:git log
    3. 版本管理
    版本标签:git tag n.m.k
  5. Git技巧
    1. 只存储关键代码,删除不必要的文件: .gitignore配置可忽略文件(如删除.txt: .txt, 删除根目录下x文件夹:/x/)
    2. 从特定tag下创建分支:git checkout -b branchname version
    3. 更新git缓存的.gitignore文件:git rm --cached filename
  6. 其他
    1. git bash vim配置,支持python,c, c++头文件标头
    autocmd BufNewFile *.cpp,*.py,*.[ch],*.sh,*.java exec ":call SetTitle()" 
    func SetTitle() if &filetype == 'sh' call setline(1,"\#########################################################################") call append(line("."), "\# File Name:".expand("%")) call append(line(".")+1, "\# Author:Xwell") call append(line(".")+2, "\# mail:Xwell@qq.com") call append(line(".")+3, "\# Created Time:".strftime("%Y-%m-%d %H:%M")) call append(line(".")+4, "\#########################################################################") call append(line(".")+5, "\#!/bin/bash") call append(line(".")+6, "") else if &filetype == 'python'call setline(1,"\#########################################################################") call append(line("."), "\# File Name:".expand("%")) call append(line(".")+1, "\# Author:Xwell") call append(line(".")+2, "\# mail:Xwell@qq.com") call append(line(".")+3, "\# Created Time:".strftime("%Y-%m-%d %H:%M")) call append(line(".")+4, "\#########################################################################") call append(line(".")+5, "\#!/usr/bin/python") call append(line(".")+6, "")endifif &filetype == 'cpp'call setline(1, "/*************************************************************************") call append(line("."), "\* @Filename         : ".expand("%")) call append(line(".")+1, "\* @Description      : ") call append(line(".")+2, "\* @Date             : ".strftime("%Y-%m-%d %H:%M")) call append(line(".")+3, "\* @Author           : Xwell")call append(line(".")+4, "\* @Email            : xxxxxx@qq.com")call append(line(".")+5, "\* @Vesion           : 1.0")call append(line(".")+6, "\* @ Copyright (c) 2024 Xwell. All rights reserved")call append(line(".")+7, "\* ************************************************************************/") call append(line(".")+8, "")call append(line(".")+9, "#include<iostream>")call append(line(".")+10, "using namespace std;")call append(line(".")+11, "")call append(line(".")+12, "int main(int argc, char* argv[]){")call append(line(".")+13, "    return 0;")call append(line(".")+14, "}")endifif &filetype == 'c'call setline(1, "/*************************************************************************") call append(line("."), "\* @Filename         : ".expand("%")) call append(line(".")+1, "\* @Description      : ") call append(line(".")+2, "\* @Date             : ".strftime("%Y-%m-%d %H:%M")) call append(line(".")+3, "\* @Author           : Xwell")call append(line(".")+4, "\* @Email            : Xwell@qq.com")call append(line(".")+5, "\* @Vesion           : 1.0")call append(line(".")+6, "\* @ Copyright (c) 2024 Xwell. All rights reserved")call append(line(".")+7, "\* ************************************************************************/") call append(line(".")+8, "")call append(line(".")+9, "#include<stdio.h>")call append(line(".")+10, "")endifendifautocmd BufNewFile * normal G
    endfunc 
    

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

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

相关文章

TouchGFX之Drawable

TouchGFX框架中的所有控件均为Drawable类的子类。 该类别包含控制大小和位置的一般方法。 #ifndef TOUCHGFX_DRAWABLE_HPP #define TOUCHGFX_DRAWABLE_HPP #include <touchgfx/Bitmap.hpp> #include <touchgfx/events/ClickEvent.hpp> #include <touchgfx/event…

AI智能客服:引领企业客户服务新篇章

AI智能客服&#xff1a;高效处理客户咨询的新选择 AI智能客服能够自动识别客户的语音或文字信息&#xff0c;通过自然语言处理技术理解其意图和需求&#xff0c;并快速给出准确的回答或建议。无论是常见的产品查询、订单状态确认&#xff0c;还是复杂的投诉建议&#xff0c;AI…

WEB测试之兼容性测试

1. 软件兼容性测试 兼容性测试是指待测试项目在特定的硬件平台上&#xff0c;不同的应用软件之间&#xff0c;不同的操作系统平台上&#xff0c;在不同的网络等环境中能正常的运行的测试。 兼容性测试的目的&#xff1a;待测试项目在不同的操作系统平台上正常运行&#xff0c…

[蓝桥杯 2023 省 A] 颜色平衡树:从零开始理解树上莫队 一颗颜色平衡树引发的惨案

十四是一名生物工程的学生&#xff0c;他已经7年没碰过信息学竞赛了&#xff0c;有一天他走在蓝桥上看见了一颗漂亮的颜色平衡树&#xff1a; ​​​​​​​[蓝桥杯 2023 省 A] 颜色平衡树 - 洛谷 十四想用暴力解决问题&#xff0c;他想枚举每个节点&#xff0c;每个节点代表…

Word通配符替换章节序号

这里写自定义目录标题 通配符替换章节序号切换域通配符替换内容插入编号切换域代码 通配符替换章节序号 碎片化学习word通配符知识 切换域 切换域&#xff1a;Alt F9 域都变成静态文字&#xff1a;Ctrl/Command Shift F9 通配符 内容通配符单个数字[0-9]多个数字&#…

office办公技能|word中的常见使用问题解决方案2.0

一、设置多级列表将表注从0开始&#xff0c;设置为从1开始 问题描述&#xff1a;word中插入题注&#xff0c;出来的是表0-1&#xff0c;不是1-1&#xff0c;怎么办&#xff1f; 写论文时&#xff0c;虽然我设置了“第一章”为一级标题&#xff0c;但是这三个字并不是自动插入的…

工作中的障念 - AI运算超时

hi,为什么我在工作的时候会遭遇一种无法描述的障念&#xff0c;问题并不复杂&#xff0c;但是似乎有一堵无形的墙当着自己不能前进。这是一种普遍现象吗&#xff1f; ## 来自WeTab AI的消息: 嗨&#xff0c;听起来你在工作时遇到的障碍可能是一种称为“工作障碍”的现象。这种…

k8s 的资源清单

K8S 的资源清单 参数名类型字段说明apiVersionStringK8S APl 的版本&#xff0c;可以用 kubectl api versions 命令查询kindStringyam 文件定义的资源类型和角色metadataObject元数据对象&#xff0c;下面是它的属性metadata.nameString元数据对象的名字&#xff0c;比如 pod …

构建一个springboot项目

构建一个springboot项目&#xff0c;需要下载哪些软件与工具&#xff1f; 要构建一个Spring Boot项目&#xff0c;通常需要以下软件和工具&#xff1a; Java Development Kit&#xff08;JDK&#xff09;&#xff1a; Spring Boot是基于Java开发的&#xff0c;因此需要安装JD…

基于STM32的智能药盒设计

基于STM32的智能药盒设计 摘要 随着现代医疗技术的进步和智能家居的普及&#xff0c;智能药盒作为家庭医疗健康管理的重要组成部分&#xff0c;受到了越来越多的关注。本文设计并实现了一种基于STM32微控制器的智能药盒系统&#xff0c;该系统能够实时监测药品的存储状态&…

【C语言】【Leetcode】70. 爬楼梯

文章目录 题目思路&#xff1a;简单递归 > 动态规划 题目 链接: link 思路&#xff1a;简单递归 > 动态规划 这题类似于斐波那契数列的算法&#xff0c;结果其实就是到达前一步和到达前两步的方法之和&#xff0c;一直递归到n1和n2时就行了&#xff0c;但是这种算法有个…

解决vllm推理框架内在开启多显卡时报错问题

前言 vLLM在开启多显卡并行模式下&#xff0c;-tp 2 或者 --tensor-parallel-size 2&#xff0c;运行报错提示如下&#xff1a; The above exception was the direct cause of the following exception:Traceback (most recent call last): File "/usr/lib/python3.8/ru…

多线程中线程间如何通信

除了使用synchronized来对代码块和方法进行同步外&#xff0c;jdk1.5之后还有一种Lock同步锁的方式进行同步&#xff1a;使用lock.lock()来进行加锁&#xff0c;使用lock.unlock()方法来释放锁&#xff0c;既然可以使用lock来代替synchronized&#xff0c;那么如何进行处理sync…

【echart】数据可视化

什么是数据可视化&#xff1f; 数据可视化主要目的:借助于图形化手段&#xff0c;清晰有效地传达与沟通信息。 数据可视化可以把数据从冰冷的数字转换成图形&#xff0c;揭示蕴含在数据中的规律和道理。 如何绘制&#xff1f; echarts 图表的绘制&#xff0c;大体分为三步:…

智能合约测试例子

// SPDX-License-Identifier: MIT pragma solidity >0.4.11 <0.9.0; contract CrowdFunding {// 定义的新类型包含两个属性。struct Funder {address addr;uint amount;}struct Campaign {address payable beneficiary;uint fundingGoal;uint numFunders;uint amount;ma…

数据湖与湖仓一体是如何演变而来的?详谈大数据存储架构的变迁

在大数据存储架构的发展历程中&#xff0c;可以划分为三个显著的演进阶段。首先&#xff0c;随着Hadoop和Hive等初期项目的出现&#xff0c;数据仓库&#xff08;Data Warehouse&#xff09;的概念得以确立&#xff1b;随着数据仓库的不断演化&#xff0c;同时有了云与对象存储…

Unity DOTS中的baking(四)blob assets

Unity DOTS中的baking&#xff08;四&#xff09;blob assets blob assets表示不可变的二进制数据&#xff0c;在运行时也不会发生更改。由于blob assets是只读的&#xff0c;这意味着可以安全地并行访问它们。此外&#xff0c;blob assets仅限于使用非托管类型&#xff0c;这意…

一-容量管理是什么?

容量管理的定义 随着企业对外服务的内容和用户不断增长&#xff0c;企业会不断增加对硬件和云基础设施的投入&#xff0c;用于满足业务发展的需要。但是很多业务和技术架构师很可能没有关心或思考过采购这些IT资源的必要性&#xff0c;或者应采购多少IT资源才算合理。当前很多…

C++引用学习day2

思维导图 定义一个矩形类&#xff08;Rectangle&#xff09;&#xff0c;包含私有成员&#xff1a;长(length)、宽&#xff08;width&#xff09;, 定义成员函数&#xff1a; 设置长度&#xff1a;void set_l(int l) 设置宽度&#xff1a;void set_w(int w) 获取长度&#…

STL和泛型编程

STL和泛型编程 一.STL六大部件"前开后闭"区间 二.容器(1)顺序容器1.array源码剖析 2.vector源码剖析vector的迭代器 3.list源码剖析迭代器的设计规则关于重载操作符关于重载->和*操作符 4.forward_list源码剖析 5.deque源码剖析底层数据结构操作实现deque的设计de…