Android 开发之Git的使用,你绝对值得拥有

2024-06-11 15:08

本文主要是介绍Android 开发之Git的使用,你绝对值得拥有,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

简介

每个故事都有一个开头,有一个经过,还有一个结果,记得好久以前,我还非常讨厌使用git,你妈啊,这个怎么搞,问这个问那个,怎么办,一遇到问题,都问,以后怎么办,想了想,还是真正打算认认真真的学习下git的技能,把这门技能掌握在自己手里。。。所以开始了漫长的百度,google,然后终于有了结果

Git

大家是否还在对这个一知半解,什么都不知道,或者百度了很多,都没有结果,感觉网上都是乱七八糟的,很多的都是东拼西凑的,没有一个整体的流程,让人感觉真的很难受,所以,接下来,为学习的小伙伴,领取一条免费的路走,站在大神的肩膀,看世界,真的好简单

请点击这里,Git 从入门到高手,那些你该全部掌握的经典,站在大神的肩膀看世界

吹了一堆牛逼,哈哈。。。。。

Git的使用详解

一:安装widows版本的git

(1)下载地址:https://git-for-windows.github.io
(2)开始:“Git”->“Git Bash” 命令窗,成功安装

二:设置Git,自报家门,输入命令行

(1)git config –global user.name “xxx”
(2)git config –global user.email “xxx@qq.com”

三:如何创建版本库

(1)mkdir 目录名如:app
(2)cd app
(3)pwd显示当前目录,绝对路径

PS:目录最好不要用中文命令

四:设置目录变成git的仓库

(1)git init
当前目录就变为可以用git管理的目录了
(2)ls -ah
可以查看当前目录下有一个隐藏的.git目录,最好不要去修改它,否者会造成git混乱等

五:操作文件

1.添加文件
git add xxx.文件
git add xxx2.文件
2.添加文件到仓库
git commit -m “write a xxx file”

-m 后面的代表提交的文档说明
git add -A . 添加所有改变文件
git add - 表示添加所有内容
git add . 表示新文件和编辑过的文件不包括删除的文件
git add -u 表示添加编辑或者删除的文件

六:时光机器

git status 查看命令行状态
git diff 查看不同点

七:回退或者新版本

git log 查看以前的日志
git reset –hard head^ 回到上一个版本
git reset –hard commit id 去到想要去的那个版本
git reflog 记录每次执行git的命令

八:管理修改

git add 添加到缓存区
git commit 真正提交到

PS:不add到缓存区的代码是不会提交的

九:撤销修改

git checkout – readme.txt 撤销修改

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
让这个文件回到最近一次git commit 或者git add的状态

git reset head readme.txt 把缓冲区的代码撤销,重新放回工作区
git checkout – reade.txt 丢弃工作区的修改

十:删除文件

rm xxx.txt 删除文件
git rm xxx.txt 真正删除某文件
git checkout – xxx.txt 误删文件,恢复文件

十一:远程仓库

1.创建ssh key

ssh-keygen -t rsa -c “xxx@.com”

目录下id_rsa(私钥不能泄露)和id_rsa.pub(公钥可以告知任何人)文件
有,直接跳过下一步
无,执行命令创建ssh key

2.登录github

(1)打开account settings 的ssh key页面
(2)点击add ssh key填写title,在key文本黏贴id_rsa.pub文件内容
(3)add key 完成添加key

github可以有多个key,把每个key都添加到github,任何电脑都能提交代码

ps:自己搭建的git服务器或者购买github仓库变为私有,别人都不能访问

十二:添加远程仓库

1.登录github,create a new repo创建仓库
2.设置本地仓库和远程仓库相关联
git remote add origin 仓库地址
3.推送本地消息到远程仓库
git push -u origin master

git push命令,实际上是把当前分支master推送到远程
-u 本地的master分支内容推送到远程新的master分支,本地的master分支和远程的master分支关联起来

4.推送最近修改
git push origin master

十三:从远程克隆

最好是先在github上创建远程库,然后从远程克隆下来
git clone 地址
使用https速度慢,每次都必须输入口令,通过ssh支持原生的git协议是速度最快的,但是有些公司不能使用ssh协议

十四:分支的创建和合并

1.创建分支
git checkout -b dev
-b 相当于创建并切换,相当于一下两条命令
git branch dev
gti checkout dev
2.切换到分支
git checkout devgit
3.查看当前分支
git branch 当前分支有一个*标记
4.合并分支
git merge dev 将指定分支合并到当前分支
5.删除当前分支
git branch -d dev 删除dev分支

十五:冲突解决

1.开始合并
git merge dev
2.解决冲突,修复
git add xxx文件 添加修复文件
git add -a . 添加所有修复文件
git commit -m “fix the all merge file”

十六:分支管理策略

fast forward 删除分支会丢失掉分支信息,禁用fast forward方法,git会在merge的时候生成一个新的commit,就可以从分支历史查看分支信息

1.合并分支不是用git的Fast forward模式
git merge–no–ff -m “xxx说明”dev
–no–ff 表示不禁用fast forward模式
2.查看分支历史信息
git log –graph –pretty=oneline –abbrev-commit
显示分支提交的所有信息

十七:bug分支

1.存储功能
git stash
2.查看存储的记录
git stash list
3.恢复存储的时候
git stash apply 恢复后,不擅长stash内容
git stash pop 恢复后,删除stash内容

十八:Feature分支

1.新建一个feature分支
git checkout -b feature
2.切回分支,准备合并
git checkout master
3.突发不要改功能了
git branch -d feature
发现删除不了,不能删除一个没有合并的新分支
4.强行删除
git branch -D feature

十九:多人协作

1.查看远程库信息
git remote
或者
git remote -v
$ git remote -v
origin git@github.com:michaelliao/learngit.git (fetch)
origin git@github.com:michaelliao/learngit.git (push)
没有权限,看不到push的地址
2.推送分支,把所有的本地代码提交到远程库
git push origin master
3.推送其他分支,把所有的本地代码提交到其他分支
git push origin dev
4.那些分支该推送,那些不需要?
● master分支是主分支,因此要时刻与远程同步;
● dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步;
● bug分支只用于在本地修复bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个bug;
● feature分支是否推到远程,取决于你是否和你的小伙伴合作在上面开发。

5.其他
git push origin dev 推送到分支
git pull 最新的文件从origin/dev分支抓下来
6.git pull 失败 (如果 git pull 提示“no tracking information”)
git branch –set-upstream dev origin/dev
git pull

二十:标签管理

设置tag可以很好的查找自己想要的tag
1.查看分支
git branch
2.创建tag
git tag v1.0
3.查看tag
git tag
4.打标签到具体的哪一个
git tag v1.0 commitId
5.查看标签信息
git show tag标签(如:v1.0)
6.通过-s用私钥签名一个标签
git tag -s v0.2 -m “说明文字” 秘钥

二十一:操作标签

1.删除错误标签
git tag -d v1.0
2.推送标签到远程
git push origin v1.0g
3.推送所有标签到远程
git push origin –tags
4.推送到远程的标签要删除
git tag -d v1.0 删除本地
git push origin:v1.0 删除远程

二十二:自定义git

设置git的颜色显示
git config –global color.ui true

这篇关于Android 开发之Git的使用,你绝对值得拥有的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1051509

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

使用Python和OpenCV库实现实时颜色识别系统

《使用Python和OpenCV库实现实时颜色识别系统》:本文主要介绍使用Python和OpenCV库实现的实时颜色识别系统,这个系统能够通过摄像头捕捉视频流,并在视频中指定区域内识别主要颜色(红... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间详解

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删