参考资料:狂神说Git、配置参考、操作参考。感觉自己写一些东西以后复习亲切一些。
版本控制、管理多个人协同开发
常见的版本控制工具:Git、SVN等。Git是当下最流行的
版本控制的分类:
常见面试题:
是为了辅助Linux内核开发的
Git Bash:Linux风格,推荐
Git CMD:Windows风格
Git GUI:图形化界面,不推荐
# 清屏
clear
# 查看git配置
git config -l
# 只看系统配的
git config --system -l
# 只看自己配的,重点包括user.name和user.email
git config --global -l
所有的配置文件都保存在本地,本质都是文件。
系统级的配置在Git文件中:
用户配置设置:
git config --global user.name "YourName"
git config --global user.email "12138@qq.com"
环境变量要不要配置?取决于是否任何时候都要用,默认已经配置了。
Gti本地三个工作区:工作目录(Working Directory)、暂存区(Stage / Index)、资源库(Repository / Git Directory),还有一个远程git仓库(Remote Direcory)
重点是工作区和远程仓库。
重点学习:add -> commit -> push
创建git项目:本地仓库搭建
git init
创建git项目:克隆远程仓库
git clone https://github.com/facebookresearch/barlowtwins/tree/main
git status
git status readme.md
git add .
git commit -m "first commit"
4. 忽略文件
不是所有文件都要提交,比如配置文件、临时文件、本地文件、日志,在主目录下建立.gitignore文件。大部分都是开发的东东,不咋听得懂。
国外github,国内gitee,自建gitee。步骤:
ssh-keygen -t rsa
然后回车回车
4. 将公钥信息public key添加到码云账户中(Github公钥设置在setting里的SSH and GPG keys)
5. 使用码云创建一个自己的仓库
我平时用Pycharm多,下面Pycharm为例。Pycharm的project栏通过文件名颜色识别文件状态。
master主分支、dev开发分支、各种version。类似平行宇宙。
# 新建一个分支,但依然停留在当前分支
git branch [branch-name]
# 新建一个分支,并切换到该分支
git checkout -b [branch]
# 合并指定分支到当前分支
$ git merge [branch]
# 删除分支
$ git branch -d [branch-name]
# 删除远程分支
$ git push origin --delete [branch-name]
$ git branch -dr [remote/branch]
如果多个分支并行执行,就会导致代码不冲突,同时存在多个版本。如果冲突则要选择保留谁的代码。