最新git入门(1),2024年华为大数据开发面试真题解析

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

此时再查看文件状态,会发现1,txt已经提交成功。

这种文件名提交的方式每次只能提交一个文件,如果要提交多个文件,我们可以用"git add ."来一次性提交所有工作区的文件。

4. git commit提交到本地仓库

利用git commit提交暂存区的内容到本地仓库,-m后面跟的是注释,自己添加。

git commit -m “注释”

提交完成后,如果想要查看提交的历史记录可以用git log指令。

5. 修改文件

如果我们对已经提交到仓库的文件进行了修改,Git会感知到内容有变化,此时用git status查看就会发现此时被修改的文件会提示modified(被修改),此时的该文件就是处于工作区,如果要再次提交,只需要再用git add和git commit就行了。

6. 版本回退与切换

比如我有一个文档,第一次提交的时候里面什么都没有,第二次提交的时候里面写了一个1,如果我想要让这个文档回到什么都没有的状态,我们只需要把文件还原到第一次提交的状态即可。该操作可以通过命令 git  reset --hard commitID实现,其中commitID可以通过git log查看,如下图

(tips: 在Git Bash复制文本时,只需要选中需要复制的文本即可,不需要右键点Copy)

需要注意的是,使用版本回退后也会清除git log中后续的提交记录,比如刚开始我做了两次提交,一次是"版本 v1.0",第二次时"版本v1.0.1“,此时我回退到了v1.0版本,此时再用git log查看,

发现版本v1.0.1的提交记录不在了,而想要版本切换时又需要commitID,此时我们可以通过git reflog命令查看变化情况

可以看出,当前CommitID为c816151,第二次提交的ID为2945fc0,再使用git reset命令切换到最新版也是能成功切换的

总之,使用reset回退版本适用于丢弃掉新版本而使用旧版本的情况,如果想再回到新版本,需要知道CommieID,但是如果回退的时间比较长,提交的次数又比较多的话,找这个ID还是挺麻烦的。

7.  .gitignore文件

在项目中,总是会存在一些文件,我们并不希望提交到仓库,因为这些文件并不是项目的核心文件没啥用,比如pycache文件夹。这时,我们可以通过创建.gitignore文件,并在里面添加上想要git忽略掉的文件即可,这样Git就会自动"无视"这些文件。

一般这些需要git忽略的文件格式和文件目录都是固定的,我们可以直接Copy过来用,这是github上别人总结的gitignore模板,可以直接拿过来用,也可以根据自己的需要加以修改。

8. 分支

创建与切换分支

分支的作用在于把开发和产品分离开,我们可以创建两条分支,一条develop(开发)分支,一条master(产品)分支,我们在开发的时候在develop分支进行,在对产品更新的时候把开发分支的内容合并到产品分支上。

查看分支:git branch

创建分支:git branch 分支名

切换分支:git checkout 分支名

创建并切换分支:git checkout -b 分支名

重命名分支:git branch -m 旧分支名 新分支名

删除已合并过的分支:git branch -d 分支名

删除未合并过的分支:git branch -D 分支名

在创建仓库的时候,也可以同时把分支创建了,指令是git init -b 分支名,而我们如果创建仓库的时候没有创建分支,在提交代码时git则会创建一个名为master的默认分支。

举个例子,比如我现在有一个a分支,然后创建了1个a.txt文件并提交到本地仓库,然后再创建1个b分支,此时b分支由于是在已有a分支的情况下创建的,所以它继承了a分支的所有内容,用git log查看发现两个分支的提交内容记录是一样的。但是如果现在切换到b分支,再创建1个2.txt文件并提交到b分支的本地仓库里,此时在切换回a分支会发现a分支的目录里和提交记录里都是找不到2.txt文件的,分支之间相互独立。

合并分支

合并分支的指令是git merge 分支名

合并分支是把另一个分支的内容合并到当前分支,比如我在a分支创建了一个a.txt,然后创建b分支,此时b分支也有a.txt,此时回到a分支,再创建b.txt文件,此时a分支是比b分支”新“的,此时我们回到b分支,输入指令git merge a即可把a分支合并到b分支,此时b分支便会出现b.txt文件。

在开发过程中,轻易不要动产品分支,否则可能会给他人的合并带来冲突!!!

9. 冲突

远程仓库冲突

在多人协作开发的时候,我们需要一个第三方平台(如github或公司自己的远程仓库)管理代码,比如员工a和员工b同时开发一个项目,为了实现两个员工的代码同步,就需要二者都把代码提交到云端。当然,除了向远程仓库推送,自己本地仓库的多个分支合并也可能会出现冲突。

如果员工a仓库里有1文件和2文件,员工b仓库有1,2,3文件,此时员工b把写好的代码提交远程仓库,此时是没问题的,而此时远程仓库有1,2,3文件,a员工仓库只有1,2文件,也就是此时远程仓库的版本是比a员工的仓库版本新的,如果a员工此时写好了1个4文件并推送到远程仓库,仓库会拒绝a员工的推送,这就是冲突的产生。

而要解决冲突也很简单,a员工只需要使用git pull命令把远程仓库的文件同步过来,然后a员工就有了1,2,3,4一共4个文件,此时就可以再次提交了。总之就是员工开发的代码版本必须高于远程仓库的代码版本,否则会发生冲突。

本地分支冲突

我现在有一个a分支,一个b分支,两个分支都有1个1.txt文件并都已提交到本地仓库,a分支的该文件内容是123,b分支是456,此时我在a分支合并两分支就会提示冲突,此时打开a分支中1.txt文件会如下图所示

我们只需要保留需要保留的部分(123)即可,然后重新git add 和git commit并正常合并。

四、Gitee远程仓库

1. 创建仓库

首先注册账号并登录,然后新建一个仓库

点击创建即可完成。

2. 配置公钥

要想向创建的仓库推送代码,需要被验证你是否有权限向该仓库推送。方式1就是使用账号密码,但这种方式过于繁琐不推荐,方式2是使用公钥。

先来生成密钥,在Git Bash窗口里输入命令

ssh-keygen -t rsa

回车执行,然后一直按回车,直到出现下图中的RSA密钥

查看密钥可以使用下面指令

cat ~/.ssh/id_rsa.pub

然后把密钥复制一下,打开gitee设置里的SSH公钥复制到公钥里面,标题会自动生成,自己写也可以。

此时公钥配置完成,输入以下指令验证是否配置成功

ssh -T git@gitee.com

回车后显示提示信息,然后输入yes再次回车就可以看到成功登陆提示了。

3. 添加远程仓库

首先要添加远程仓库的地址用于将本地仓库和远程仓库绑定,使用以下指令

git remote add origin 远程仓库地址

其中远程仓库地址可以从仓库页面拿到,选择SSH,里面的链接就是地址。

如果你选择HTTPS,那么推送代码的时候是需要账号密码的,配置的公钥起不到作用。

origin代表远程仓库的别名,这个是约定俗成的,通常不改动。

此时我们可以使用git remote指令查看我们的远程仓库

删除远程仓库的指令未:

git remote rm 仓库名(origin)

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

.(img-tu6YCvCp-1715494980888)]
[外链图片转存中…(img-IrKBZdxG-1715494980889)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值