python后端面试第六部分:git版本控制--长期维护

##################    Python语法基础        #######################

git版本控制

git常见命令作用
某个文件夹中的内容进行版本管理:
进入文件夹,右键git bash
git init 初始化,当前所在的文件夹可以被管理且以后版本相关的数据都会存储到.git文件中
git status 查看当前文件夹以及子目录中文件是否发生变化:内容修改/新增文件/删除,已经变化的文件会变成红色,已经add的文件会变成绿色
git add . 给发生变化的文件(贴上一个标签)或 将发生变化的文件放到某个地方,只写一个句点符就代表把git status中红色的文件全部打上标签
git commit -m ‘新增用户登录认证功能以及xxx功能‘ 将“绿色”文件添加到版本中
git log 查看所有版本提交记录,可以获取版本号
git reset --hard 版本号 将最新的版本回退到更早的版本
git reflog 回退到之前版本后悔了,再更新到最新或者最新之前的版本
git reset --hard 版本 回退 
97. 简述以下git中stash命令作用以及相关其他命令。
stash用于将工作区发生变化的所有文件获取临时存储在“某个地方”,将工作区还原当前版本未操作前的状态;stash还可以将临时存储在“某个地方”的文件再次拿回到工作区。

git stash 将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态
git stash list 查看“某个地方”存储的所有记录
git stash clear 清空“某个地方”
git stash pop 将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
git stash apply 编号, 将指定编号记录从“某个地方”重新拿到工作区(可能有冲突) 
git stash drop 编号,删除指定编号的记录
98. git 中 merge 和 rebase命令 的区别。

https://www.cnblogs.com/xueweihan/p/5743327.html
99. 公司如何基于git做的协同开发?

https://www.cnblogs.com/abelsu/p/5138136.html
100. 如何基于git实现代码review?

https://blog.csdn.net/maray/article/details/50206927
101. git如何实现v1.0 、v2.0 等版本的管理?

https://blog.csdn.net/zhazhaji/article/details/75258426
102. 什么是gitlab?

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。安装方法是参考GitLab在GitHub上的Wiki页面。
103. github和gitlab的区别?
先说一下相同点,二者都是基于web的Git仓库,在很大程度上GitLab是仿照GitHub来做的,它们都提供了分享开源项目的平台,为开发团队提供了存储、分享、发布和合作开发项目的中心化云存储的场所。

GitHub作为开源代码库及版本控制系统,拥有超过900万的开发者用户,目前仍然是最火的开源项目托管系统。GitHub同时提供公共仓库和私有仓库,但如果要使用私有仓库,是需要付费的。

而GitLab解决了这个问题,你可以在上面创建私人的免费仓库。

GitLab让开发团队对他们的代码仓库拥有更多的控制,相比于GitHub,它有不少的特色:

允许免费设置仓库权限;允许用户选择分享一个project的部分代码;允许用户设置project的获取权限,进一步的提升安全性;可以设置获取到团队整体的改进进度;通过innersourcing让不在权限范围内的人访问不到该资源。

从代码私有性方面来看,有时公司并不希望员工获取到全部的代码,这个时候GitLab无疑是更好的选择。但对于开源项目而言,GitHub依然是代码托管的首选。
104. 如何为github上的开源项目贡献代码?
对一个开源项目有足够了解的情况下,如果你发现问题或者更好的解决方案的话,可以开个issue先。
一般情况下维护这个项目的人或者其他使用这个项目的人会参与讨论的,然后基于这些讨论你可以发一些pull requests。
如果你的方案得到很多人赞同的话,项目维护人员会把他们merge,你也就成了这个项目的contributor了。
当然很多情况下,你开的这个issue已经有人提过了,或者说是你自己误解了,但是相信在和其他开发人员交流的过程中,你也能学到许多。
105. git中 .gitignore文件的作用?
一般来说每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。

实际项目中,很多文件都是不需要版本管理的,比如Python的.pyc文件和一些包含密码的配置文件等等。

原文地址:https://www.cnblogs.com/andy0816/p/12228526.html

时间: 2024-10-07 03:54:04

python后端面试第六部分:git版本控制--长期维护的相关文章

python后端面试第二部分:网络编程--长期维护

##################    Python语法基础        ####################### 1,tcp/ip协议,tcp和udp, 2,进程,线程,协程, 原文地址:https://www.cnblogs.com/andy0816/p/12228495.html

python后端面试第一部分:python基础--长期维护

python后端面试第一部分:python基础 ##################    Python语法基础        ####################### 变量常量 数据类型:数值型,字符串,列表,元组,集合,字典的操作, 控制语句:for循环,while循环,if语句 ##################    Python函数        ####################### 函数的定义 函数的参数 匿名函数 高级函数, Python内置函数 Python的:

python后端面试第五部分:Linux操作系统--长期维护

##################    Python语法基础        ####################### Linux操作系统 操作系统,可以直接认为是linux,毕竟搞后端的多数是和linux打交道. 1. tcp/udp的区别?tcp粘包是怎么回事,如何处理?udp有粘包吗? TCP/UDP, 可靠与非可靠:三次握手,四次挥手:滑动窗口,拥塞控制: TCP粘包: http://blog.chinaunix.net/uid-429659-id-5207848.html 2.

python后端面试第七部分:项目部分--长期维护

##################    Python语法基础        ####################### 项目部分 4.python适合的场景有哪些?当遇到计算密集型任务怎么办? Python适合的场景1. 科学计算 2. 快速原型开发 3.网站. 4. 脚本. 实际上在各个方向上它都有挺多应用,前列几项算是比较火的吧.计算密集型任务模块用C/C++做.多进程,多线程也可以稍微提高些. 5.python高并发解决方案?我希望听到twisted->tornado->geve

python后端面试第八部分:HR面试部分--长期维护

##################    Python语言       ####################### HR面试部分 hr面 聊了下为啥离职: 聊了下基本情况: 薪资问题, 原文地址:https://www.cnblogs.com/andy0816/p/12228586.html

python后端面试第四部分:django框架--长期维护

##################    Python语法基础        ####################### django框架部分 1,流程 2,admin 3,视图 3,路由 4,csrf 3.csrf是什么?django是如何防范的? django请求的生命周期, 浏览器-wsgi-中间件-路由-视图-然后处理数据等,返回数据 3,什么是wsgi?是一个协议,还有一些需要理解, 4,中间件是什么?在视图之前定制一些操作, 5,使用中间件做什么?做过什么认证,权限,跨域,等,

记2017年年底,几次Python后端面试

前记:16年本科毕业,选了大公司的QA,工作一段时间后发现更喜欢做开发,遂走上了转岗之路,在一家小公司的做了半年开发之后,由于公司原因,遂开始了艰难的投简历面试之路.临近年底,工作机会不是很多,下面记录了部分面试的公司,因为这些都记不全问了啥了,就统一写在一个里了.之前之后有其他文章记录了剩余公司的面试. 1. 果壳 电话面试: 说一下TCP的三次握手,四次挥手,为什么会这样? http安全的性的了解,说一下对cookie和session的了解: 对mysql的了解,说一下你常用的数据类型,ch

python后端面试第二部分:数据储存与缓存相关--长期维护

##################    数据储存与缓存相关        ####################### mysql数据库, redis数据库, 原文地址:https://www.cnblogs.com/andy0816/p/12228500.html

Python爬虫面试常见问题

先收藏一下,有空再整理答案 爬虫面试常见问题 一.项目问题: 1.你写爬虫的时候都遇到过什么反爬虫措施,你是怎样解决的 2.用的什么框架.为什么选择这个框架 二.框架问题: 1.scrapy的基本结构(五个部分都是什么,请求发出去的整个流程) 2.scrapy的去重原理(指纹去重到底是什么原理) 3.scrapy中间件有几种类,你用过哪些中间件 4.scrapy中间件在哪里起的作业(面向切片编程) 三.代理问题: 1.为什么会用到代理 2.代理怎么使用(具体代码, 请求在什么时候添加的代理) 3