内容概要
- 1 git工作流程
- 2 git常用命令
- 3 git 过滤文件
- 4 git多分支开发
- 5 git远程仓库
- 6 ssh链接远程仓库,协同开发
内容详细
1 git工作流程

1 只要被git管理了,只要文件发生变化(新增,删除,修改),使用git就能看到它变成红色了
2 工作区的变更,要提交到暂存区,变绿色了
3 从暂存区提交到版本库,才会被版本管理,一旦被版本管理了,后期可以回退到某个版本
4 可以把版本库的内容,提交到远程仓库,统一管理起来【所有开发者都可以提交】
5 本地可以拉去远程的代码
6 本地可以把本地代码提交到远程
"""
1)有红色信息(工作区有内容),就执行 add
2)全绿信息(内容全部在暂存区),才执行 commit
3)只有被版本库控制的代码,才能被监听,所以可以回滚到任何一个版本
"""
2 git常用命令
git init
s1.py
git status
-局部配置---》只针对于当前仓库--》当前仓库.git文件夹下的config中
git config user.name 'liuqingzheng'
git config user.email '616564099@qq.com'
-全局配置---》针对于所有仓库---》 C:\Users\用户文件夹\.gitconfig新建用户信息,在所有仓库下都可以使用
git config --global user.name 'lqz'
git config --global user.email '306334678@qq.com'
git add .
git add 文件名
git commit -m '提交了s1.py和s2.py'
git status
修改s2.py
git status
git add .
git status
git commit -m '修改了s2.py'
git status
git log
git reflog
git checkout .
新增s3.txt
git add .
git status
git reset HEAD
git reset --soft 上一个的版本号
git reset --版本号
git reset --mix 版本号
1 新建一个视频文件 :致命诱惑.mp4
2 git status
3 git add .
4 git commit -m '新增了诱惑视频'
5 当前工作区显示上一个版本的样子
git reset --hard 版本号
6 回退到被版本管理的最后版本
git reset --hard 版本号
git init
git status
git log
git reflog
git add .
git commot -m ''
git reset --hard 版本号
-1 git status -s 简略显示
-2 空文件夹不会被git记录
-3 如果删掉当前仓库的用户,就会使用系统的用户,git log 可以看到是哪个用户提交的
-4 了解
查看时间点之前|之后的日志:
>: git log --after 2018-6-1
>: git log --before 2018-6-1
>: git reflog --after 2018-6-1
>: git reflog --before 2018-6-1
查看指定开发者日志
>: git log --author author_name
>: git reflog --author author_name
回滚到指定版本:
回滚到上一个版本:
>: git reset --hard HEAD^
>: git reset --hard HEAD~
回滚到上三个版本:
>: git reset --hard HEAD^^^
>: git reset --hard HEAD~3
回滚到指定版本号的版本:
>: git reset --hard 版本号 (重点)
>: eg: git reset --hard 35cb292
--5 git log,git reflog
3 git 过滤文件
1)在仓库根目录下创建该文件
2)文件与文件夹均可以被过滤
3)文件过滤语法
""" 过滤文件内容
文件或文件夹名:代表所有目录下的同名文件或文件夹都被过滤
/文件或文件夹名:代表仓库根目录下的文件或文件夹被过滤
eg:
a.txt:项目中所有a.txt文件和文件夹都会被过滤
/a.txt:项目中只有根目录下a.txt文件和文件夹会被过滤
/b/a.txt:项目中只有根目录下的b文件夹下的a.txt文件和文件夹会被过滤
*x*:名字中有一个x的都会被过滤(*代表0~n个任意字符)
空文件夹不会被提交,空包会被提交,包可以被提交(包中有一个init空文件)
"""
3.1 补充:luffy后端项目要被git管理
4 git多分支开发
-查看分支:
git branch
-创建
-git branch dev
-切换分支
- git checkout dev
-删除分支
-git branch -d dev
-合并分支:【可能会有冲突】
- 要把dev合并到master上
-回到master上,开始执行代码
git merge dev
-查看远程分支:【后面会讲】
git branch -a

5 git远程仓库
-我给你搭建一个:测试一下
-新建一个远程仓库
-只要写个仓库名字,什么都不要填,仓库是空的(如果不是空的,操作麻烦)
-开源协议:GPL,Apache
-linux:GPL,自由使用开源的软件,修改,增加内容,可以收费,但是你的代码必须开源
-Kafka。。。:Apache,可以使用开源软件,但必须注明使用了
-把本地代码,上传到远程仓库
-本地有仓库,已经有版本管理了,远程有仓库,是空的
-设置用户名和邮箱--(如果不按照它显示的设置,在右侧贡献者看到别人头像)
git config --global user.name "liuqingzheng"
git config --global user.email "306334678@qq.com"
-已有仓库
-新增一个远程仓库
-git remote add origin https://gitee.com/liuqingzheng/lqz.git
-把本地代码推上去
-git push origin master
-第一次推,需要输入gitee的账号和密码
-以后不需要输入用户名密码了
-凭证管理,可以删除,可以修改

5.1 把路飞项目传到远程仓库(非空的)
-git add .
-git commit -m '完成了xx功能,修改了xx文件。。。。'
-每次提交【推到远端】代码之前,要拉取一下代码---》没事你就拉去一下,保证本地的版本库一直跟远端保存一样----以后冲突会变少
-git pull origin master
-git push origin master
-如果推不上去,说明本地不是最新版本,一定下拉去一下,成了最新版本再去提交

6 ssh链接远程仓库,协同开发
-https:输入用户名密码,保存在凭据管理中
-ssh:配置公钥私钥
-生成公钥私钥
-把公钥放到gitee上
-配好远程仓库,以后直接提交,不需要输入任何秘钥的东西
-按照这个步骤操作:https://gitee.com/help/articles/4181
-cmd命令行中,一路回车,会在【C:\Users\oldboy\.ssh】文件夹下生成公钥和私钥
ssh-keygen -t ed25519 -C "306334678@qq.com"
-生成一个公钥,一个私钥
id_ed25519
id_ed25519.pub
-把公钥配置在gitee的配置文件中
-到此,你的机器和gitee互相上传下载代码,都不要认证了
-先删除origin 对应的https的链接:git remote remove origin
-查看一下,没有了:git remote
-配置成ssh的地址
git remote add origin git@gitee.com:liuqingzheng/luffy_api.git
-以后直接拉去,提交代码即可
git pull origin master
git push origin master

6.1 协同开发
-要么给你个链接,点一下
-要么直接添加你
-把项目clone下来:git clone git@gitee.com:liuqingzheng/luffy_api.git
-用pycharm打开,愉快的开发了,开发完新功能
-git add .
-git commit -m
-git pull origin master
-git push origin master
作业
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)