git的使用教程实战详解

本文对比了Git与SVN的使用场景与流程,重点介绍了Git的分支管理、本地存储及常见操作,适合刚接触版本控制系统的开发者阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前项目一直使用的是svn,换了git之后看了网上一大堆教程,结果还是一脸懵逼的状态。最后还是在大神的带领下终于有所领悟,今天带大家分享一下。

首先说一下svn:svn比较适用小型项目的管理、开发或者一些公司员工之间数据资料的交换。简单、容易上手是其最大的特点,另外还有中文版。正常情况下只要右键更新或者提交就行了。git:对分支管理、模块开发等进行了提升,以便于更好的在多版本、多员工之间进行管理。

svn简单流程    提交:本地文件>提交到服务器;更新:服务器>覆盖或合并到本地;

git简单流程      git会在本地增加一个本地存储空间,相当于临时服务器。提交:本地>本地存储>服务器;更新:服务器>本地和本地存储;

如果仅仅是没有任何分支的情况下,git肯定没有svn好了

 

以下重点介绍git:

 

分支是什么?为什么要用到分支?

举个例子:你在改动首页,张三在做支付页,一星期后老板说首页先不发布,而你已经提交了n多遍代码说不定还和张三有重叠,这时怎么办?肯定会想:如果和张三的代码分开多好啊。其实分开这个思想就是开一个分支,如图

其实你和张三分别开发就是在版本2.0上分出来两个分支。

 

个本地存储是干嘛用的?

既然你和张三开了两个分支,那么这两个分支存储哪呢?在服务器吗?

假如存到服务器,你俩每开一个分支服务器都要自我拷贝一次,另外还要考虑是否重名,是谁创建的,有没有权限,网络状况好不好,是哪个版本等等等等,其实你只需要在当前代码基础上拷贝一份罢了,仅此而已,本地存储自然是当之无愧了。

 

如何创建一个git项目?

图上很熟悉吧,在github或码云等相关的网站上创建一个新的project,然后右边有下载之类的,然后复制网址(https或者ssh都可以,如果连不上两个都试试)

下载并配置好git(自己度吧),然后进入终端或者cmd进入一个空文件夹下

1、如果github上已有代码,就克隆过来

git clone "url"//远端文件下载到本地
cd XXXX//命令进入刚刚clone的文件夹下

2、如果github上没任何东西(也可以偷懒直接用方法1),初始化一个

git init//初始化

git remote add origin "url"//连接项目

操作完12后执行以下几操作

(git fetch --all//强制覆盖本地,如果下面几步一直报错可以尝试执行这一步)

git reset --hard origin/master//版本指针指向(master)最新

git branch --set-upstream-to=origin/master master//绑定本地分支(master)到远端master,带origin/的都是操作远端
git config core.ignorecase false //对文件大小写敏感(最好设置,不然只是更改文件名大小写是提交不上去的,坑队友没商量)
git pull//更新测试一下

 

绑定是什么?为什么要绑定?

假如远端有两个分支,你的每次提交是不是都得指定是哪个分支?

 

如何使用git?

首先提交和更新的基本步骤

git status//查看状态(更改的信息)

git add .//标记所有更改的文件(也可以指定某个文件,把.替换成对应文件的相对路径)

git pull //更新,提交前先更新

git commit -m "修改bug"//提交到本地存储,并加备注(必须)

git push //从本地存储推到远端上

 

账号密码如何设置?

输入以下命令记住密码(貌似只有https协议能记住密码,各位自测吧。另:网上的各种麻烦教程原理等均属坑爹行为,这里才是正道,嫑被拐骗了):

1.先保存账号信息,执行以下三个命令:

git config --global user.name 你的账号名

git config --global user.email 你的邮箱

git config --global credential.helper store

然后git pull输入账号密码后再pull一下你就会发现不用再输入账号密码啦

 

我大studio怎么可能不支持git

点击vcs>EnableVersion Control Integration,选择git

这时底部栏会多出两个标签,version control查看修改文件,右下角的develop或master是当前的分支,点击即可操作其他分支(切换、合并、删除等),如图

 

git的其他操作

强制覆盖并删除本地文件(谨慎操作!!!谨慎操作!!!谨慎操作!!!曾经伤心过):

git fetch --all //从远端

git reset --hard origin/master //版本指针指向最新的(master)版本

git pull //测试一下

 

添加标签:

git tag -a "版本V1.00" -m "增加了好多坑"

git tag //查看所有的tag

git show "版本V1.00" //查看指定tag的详细信息

git push origin --tags //提交所有的tag

git tag -d "xxxx" //删除本地tag xxxx

git push origin (--delete) tag V1.1//删除远端tag(不会删除本地tag,要想彻底删除,把本地的也干掉)

 

其他操作

git config core.ignorecase false //对文件大小写敏感

git branch //查看本地分支

git branch -a //查看远程分支

git merge "xxx" //合并xxx到当前分支

git checkout master //转到master主分支

git branch wTest //以当前分支创建子分支wTest

git branch -d/D "wTest" //删除本地分支wTest,大写D表示忽略分支未合并强制删除

git push origin :"develop" //删除远端develop,谨慎操作!!!

git rm --cached (-r) "xxxx"  //保留本地文件,将git远端删除

git rm --f "xxxx" //删除本地和远端的文件

 

远端分支只有一个吗?

远端分支多少看架构思想了,目前比较流行的就是初创建项目看到的那2个,截图中也有orgin/master和orgin/develop

develop代表当前正在开发的内容,当开发的小功能完成之后从将本地develop提交到远端的develop上,当测试通过准备发版时,将develop合并master上,并由master发版

master和线上发版有关,当线上的app有bug时从master开一个分支,修复完后分别合并到master和develop

总结就是:develop是开发版必须包含master内容,master是正式版必须和线上的app同步

.gitignore的配置见另一篇博客

 

总是忘了pull?总是和别人冲突?

只需要个插件,妈妈再也不用担心忘记pull,你的git从此将不再有冲突记录:https://blog.youkuaiyun.com/weimingjue/article/details/109149530

 

转载请注明出处:王能的博客https://blog.youkuaiyun.com/weimingjue/article/details/72644459

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值