git使用指南(针对项目维护)

目录

一、使用git维护项目版本

  1.git使用指南---本地git配置
  2.git使用指南---拷贝到本地
  3.git维护项目原理

二、情景复现

  1.git使用指南---考虑情况一:程序员clone后修改并上传
  2.git使用指南---考虑情况二:程序员修改文件,取消修改,然后恢复上个版本文件

三、补充说明

  

一、使用git维护项目版本  

1.git使用指南---本地git配置

以下操作以linux平台为例,windows几乎类似

("xxxx",为任意字符串; xxxx,为任意命令行字符)

(“”与""已作区分)

(//为注释,命令行输入时务必省去)

  安装git

      查看当前git版本,若不存在则上网下载安装:

git --version

  配置git

      添加个人信息:

git config --global user.name "xxxx"
git config --global user.email xxxx

      添加默认编辑器:

git config --global core.editor "xxxx"   //windows可为code,linux为vim
修改完后可用以下命令查看完整信息:
git config  --global -e 
需要修改一下细节,避免 windows linux 文本冲突( \r\n \n ),更换后具有自动替换为环境适应模式功能(\r\n->\n linux;   \n->\r\n windows)
git config --global  core.autocrlf input  //linux用户
git config --global  core.autocrlf true //windows用户

  2.git使用指南---拷贝到本地

      该命令拷贝地址指定版本的完整内容:

git clone http:xxxx

      拷贝完成之后,即可使用相关命令在该版本上进行修改、维护。修改后使用相关命令将新版本上传后,其他人可查看该修改

  3.git维护项目原理

      git维护原理是程序员拷贝中心服务器(此处为github)的数据,然后在本地进行修改,修改完成后,使用git命令指定服务器位置将修改后的版本上传(此为集中维护模式,git也可支持其他维护模式)

      整体模型:

     本地模型:

二、情景复现   

1.git使用指南---考虑情况一:程序员clone后修改并上传

程序员克隆代码:
git clone xxxx

     程序员在本地修改代码库:

vim aa_test
程序员查看已修改的文件:
git status
程序员将修改记录加入中间态:
git add aa_test

     前者为加入指定修改文件,后者为加入全部修改文件:

git add .

     程序员将修订的版本加入项目版本记录:

git commit –m "xxxx"

     程序员添加远端服务器信息(origin为默认远端名,xxxx为http类型地址等):

git remote add origin xxxx

     程序员将本地项目数据上传至服务器(master为所维护版本名):

git push origin master

     或者

git push origin main_branch //master&main_branch 为项目维护的版本分支名
2.git 使用指南 --- 考虑情况二:程序员修改文件,取消修改,然后恢复上个版本文件
修改库文件:
echo hello > ./aa_test
echo hello > ./bb_test
获取中间态文件状态(-s   以符号简洁表示出状态):
git status –s
添加文件至中间态:
git add .
确认中间态文件信息:
git status -s
从中间态恢复文件 aa_test bb_test(--staged 代表中间态) :
git restore --staged aa_test
git restore --staged bb_test
获取项目版本记录:
git log --oneline   //单行显示

     或

​​​​​​​git log
显示版本内部文件信息:
git ls-tree HEAD
git ls-tree HEAD~2 //显示倒数第三版,~后面数字是几就回跳几个版本
复制上面所显示的文件标识符,查看相应文件信息 (<xxxx>为必要选项):
git show  <文件标识符>
恢复指定版本的指定文件:
git restore --source=HEAD~2 <文件名>  //恢复倒数第三个版本的某文件

  三、补充说明

注:

   1.每个分支在维护时,均有一个头指针,提供该分支最新版本的地址;如上图的master branch & test branch;根据头插法,每次使用git commit 时将会创建新的实例并将地址加入头指针域;同理,每个版本实例维护一个指向上个版本的指针;当有新的分支产生时,建立新的头结点;我们使用命令来切换到不同的头结点,即可追溯不同版本,上图很好的展示了两个分支(test_version & master branch)的数据结构

   2.git版本维护的是修改记录,原理类似linux下的diff命令;故自项目初始化后,git在产生新版本  时并不复制原数据,而是产生修改信息

   3.在多人使用github进行上传库时,需要对冲突的修改进行确认

  • 26
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值