论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com技术社区
»
论坛
›
软件与程序人生
›
DevOps与敏捷开发
›
Git使用
Git使用
欢乐狗
论坛元老
|
2024-10-9 22:48:00
|
显示全部楼层
|
阅读模式
楼主
主题
1840
|
帖子
1840
|
积分
5520
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
Git
是一个
分布式
的版本控制软件(即拥有本地仓库进行管理)。相较于会合式的版本控制软件,更加机动更加快速。参考的教程:参考教程
1.配置用户密码list
git --version
git config --global user.name "intWings"
git config --global user.email xxx@qq.com
git config --global credential.helper store #为了保存账号密码
git config --global --list
复制代码
2.创建一个git仓库
git init
git init Learn_git #这种写法会在路径下创建一个learn_git的文件夹成为git仓库
复制代码
可见天生了.git文件夹:
3.四种状态
Untrack Unmodified Modeified Staged
4.仓库管理
git add . #提交untrack的文件
git status #查看仓库状态
git commit -m "First Commit!" #提交并用-m加上信息,或者如果不加就会进入vim界面
git log #查看提交的日志
git log --oneline#查看提交的日志并简洁的输出
git ls-files #查看暂存区,ls所查看的是工作区
复制代码
5.git reset下令
git reset是非常强大的下令,可以撤销错误的修改!有三种不同的模式:
格式类似于:
git reset --soft 8734df4dee9d7e11a5d1e3d43b760480bdbe710e
复制代码
这里的commit 号可以通过git log下令查到,留意这个不是回退这个操纵而是回退到这个commit号所指定的提交!如果在hard模式下不鉴戒reset了比较紧张的文件,仍然可以用git reset来撤回(哪怕是hard模式)可以用以下下令查察之前做的操纵:
git reflog
复制代码
然后git reset --hard到这个commit id
之前
就好了!
6.git diff下令
git diff下令用于比较差异。详细用法可以参考以下表格:
这里HEAD~指的是HEAD上一次提交的版本,如果是HEAD~2就指的是HEAD上两次提交的版本。
7.删除操纵
删除操纵有两种可以本地删除,然后add 再提交,也可以git rm删除,git rm删除的这个操纵会被保存在暂存区,并且 git ls-files并不能查察到这个文件了,然后使用commit即可。
8. .igitignore文件
这个文件可以方便库管理时忽略一些我们不想让参加库更改的文件减少库的冗余。好比c语言天生的.o文件,打印的日志文件,编译出的一些暂时文件,这些我们都不必要把他们参加到我们的库里。这个文件我们可以在我们的库中创建。
这里要留意一个小知识点:如果一个文件已经先于.gitignore在我们的库中。那么他是不会被忽略的。我们可以用 git rm --cached <filename>+git add+git commit!并且git仓库默认不会追踪我们创建的空文件夹!
github中其实已经有很多各种语言项目使用的.gitignore模板,可以直接使用!
关于匹配规则:
9.github的简单使用
github是一个git的网络托管平台。我们有两种方式毗连到我们的github远程仓库,一种是https,一种是ssh。比较保举的是ssh!使用ssh必要把自己的本地公钥(.pub)上传到github(类似于开了一扇门,但是同时看到这扇门才知道你进去的是github的服务器的房子),然后在本地配置私钥(如果第一次天生且为默认名称id_rsa,就不消配置了)。然后就可以开心的使用gitclone下令了!
那么如何在远程仓库关联本地仓库呢?我们只必要在远程建立一个空仓库,github就会自动给我们一些提示来完成这个操纵!完成之后可以使用git remote -v 来查察远程仓库和本地仓库的映射关系。这里也给出了几条指令:
要留意几点:首先是如果本地仓库为空,还没有修改,会发现git branch没有分支,是没办法直接push的。 比方:git push -u Remote_Try main 。这里为了避免登录耗时,可以直接用ssh复制的毗连替换<远程仓库名>。
10.git的分支操纵
分支操纵的应用场景很广泛,试想一下,有一个已经在运行的大型软件,如今有不同的部门要在这个软件的基础上开辟模块,在这期间还要包管现有软件的正常运行,这时间就必要分支。
主要有以下操纵:
另外有一个在终端的可视化分支展示:(有些抽象)
git log --graph --oneline --decorate --all
复制代码
但是这里可以用alias下令来做一个映射:
alias graph="git log --graph --oneline --decorate --all"
复制代码
这样我们就可以直接用graph代替这一坨指令了!
在分支合并的时间如果有冲突,就必要我们手动办理冲突,保举的方法是使用vscode等ide会比较直观。可以使用git diff查察冲突的地方,或者直接vim查察文件,手动修改之后,使用git add 然后commit!
还有一个类似于git merge的下令:git rebase。这个下令和git merge 的区别就是这个下令会像合并链表一样进行合并,类似于这样:
有点就是比较清楚,缺点就是会改变当前分支branch out 的节点。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
欢乐狗
论坛元老
这个人很懒什么都没写!
楼主热帖
C# 读写文件从用户态切到内核态,到底 ...
我的 Java 学习&面试网站又又又升级了 ...
LeetCode刷题100道,让你滚瓜烂熟拿下S ...
不到一周我开发出了属于自己的知识共享 ...
SQL server 2008 r2 安装教程
基于梯度优化的混沌PSO算法matlab仿真 ...
x64dbg 配置插件SDK开发环境
KubeEdge在边缘计算领域的安全防护及洞 ...
graphhopper-ios 编译过程详解
dfs学习笔记
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
数据仓库与分析
公有云
快速回复
返回顶部
返回列表