前言
有时候,我们会遇到这种情况:
创建本地库?撤销提交?生成patch?
我们获取到的代码是带有git地址的,但是此时我们需要提交到其他的代码库,没法提交,想切换成目标的Git地址,接下来怎么办呢?
一、创建本地库
初始化仓库,执行过此命令之后,会在当前目录出现一个隐藏的 .git 目录
git init
将目录中的文件结构添加到暂存区,处于暂存区文件的状态是已暂存未提交状态
git add .
将暂存区中的内存提交到本地仓库,-m 参数表示提交时候需要填写的内容。
git commit -m "(提交代码的备注信息)"
二、撤销上一次的提交
方法一:此命令可以撤销最近一次的提交,并保存工作区修改的内容。
git reset --soft HEAD~1
方法二:此命令会撤销最近一次的提交,并将工作区修改的内容恢复到未修改前的状态,此命令慎重使用,笔者就在此命令上踩了一个大雷子。
git reset --hard HEAD~1
三、如何生成patch
1.查看已追踪的文件都做了哪些修改
git diff 文件名称
//例如: git diff test.txt
2.将已修改的文件内容生成patch,
git diff 文件名称 > first.patch
//此命令会将test.txt文件已修改的内容输出到first.patch文件中,如果first.patch文件不存在的话会首先创建该文件
//例如:git diff test.txt > first.patch
**3.**生成最近1次commit的patch
//生成最近1次commit的patch
git format-patch HEAD^
//生成最近2次commit的patch
git format-patch HEAD^^
//生成最近3次commit的patch
git format-patch HEAD^^^
//生成最近4次commit的patch
git format-patch HEAD^^^^
//生成两个commit间的修改的patch(包含两个commit. <r1>和<r2>都是具体的
git format-patch <r1>..<r2>
四、恢复已修改的内容
git restore 文件名
//例如:git restore test.txt
五、更换远程仓库地址
- 查看当前仓库地址
//查看当前仓库地址
git remote -v
- 方法一:先删后加
1.删除原仓库地址
git remote rm origin
2.添加新仓库地址
git remote add origin (目标仓库地址)
- 方法二:直接修改远程仓库地址
git remote set-url origin URL
//直接更换远程仓库地址,URL为新地址
- 方法三:更改之后再添加(类似于方法一)
//将本地仓库名称"origin"更改为 “old-origin”
git remote rename origin old-origin
//添加新的远程仓库地址
git remote add origin url
总结
分支可以让各个业务的代码保持独立,不同的代码处理需求可以同步进行,避免了相互影响。完成之后可以再合并到专门用来发布代码的分支中。分支内部的存档、读档、创建、切换、合并等功能就是git实现代码版本管理的核心。
版权归原作者 传说Relist 所有, 如有侵权,请联系我们删除。