分享去年学习github命令行操作的笔记

news2025/2/25 13:45:25
截屏2022-07-04 12.28.05

git branch -M main 给远程分支改名

一、本地库操作

1.创建本地目录,用于存储要上传的文本文件。可以手动创建也可以用带命令行

mkdir <文件名>

2.进入文件夹cd <文件名>

3第一次创建时需要初始化仓库git init

mac显示隐藏文件SHIFT+COMMAND+.

mac路径和主目录可以通过设置和调出来。

4.设置身份

设置项目级别的身份

git config user.name 英文名

git config user.email 邮箱

信息保存位置 ./.git/config文件

设置系统用户级别的身份

git config --global user.name 英文名

git config --global user.email 邮箱

身份可以在主目录里.gitconfig文件夹里看(mac)

5.如果有文件可以提交

加入暂存区git add <文件>

如果不需要git rm --cached <文件>将文件从暂存区中撤销

加入本地库git commit <文件>,打开vim编辑器输入commit 信息(第一行),(mac)按Esc,输入:wq退出。

或者git commit -m “输入commit” <文件>信息

6 实现版本的穿梭

基于索引值的操作

(1)git reset --hard 索引值

(2)使用^符号:只能往后

git reset --hard HEAD^ 一个^表示后退一个版本,两个表示后退两个版本

(3)使用~符合:只能后退

git reset --hard HEAD~3 表示后退三步

补充代码:

git log 打印历史记录

git log --pretty=oneline打印历史记录只显示一行

git log --oneline打印历史消息,哈希值只显示一部分

git reflog查看历史记录,并且看到回到之前版本的步数

reset命令的三个参数对比(了解)

​ soft//作用用本地库移动指针,突出暂存区

​ mixed//在本地库移动指针,重置暂存区,突出工作区

​ hard//在本地库移动指针,重置暂存区,移动工作区

​ git reset --hard HEAD对暂存区工作区都进行重置

7.删除本地库文件

rm <文件名>删除文件

删除也是一种状态可以保存。

删除状态保存到了暂存区git reset --hard HEAD取回

删除状态保存到了本地库git reset --hard <哈希值>回退

8比较文件

git diff <文件名>将工作区的文件和暂存区进行比较

git diff <本地库中某一个历史版本> <文件名>将工作区的文件和本地库的历史记录进行比较

git diff <本地库中某一个历史版本>不带文件名进行比较,和当前工作区中的所有记录比较

9git分支操作

git status//查看当前所在分支

git branch -v//查看所有分支

git branch 分支名//创建新的分支

git checkout 分支名//进行分支的切换

10合并分支

切换到接受修改的分支上(被合并)

git merge <被合并的分支名>

11解决冲突

当不同分支修改同一行然后合并到一起就会产生冲突,冲突后文件里面就会有变化如:

分支冲突的表现:

<<<<<<<<<< HEAD

当前分支内容

==========

另一分支内容

.>>>>>>>>> master

人为决定手动修改

git add <文件名>

git commit -m " 日志"

注:此时commit不能带文件名

12.忽略文件

  1. 创建.gitignore文件
  2. 然后把不需要的文件加进去,可以指定文件名/目录名,可以使用通配符
/build
/src/test
*.iml

二、远程库操作

(1)推送

1.注册github账号

2.new repositoriy创建仓库

3.在本地库创建远程库别名

git remote -v查看本地库创建远程库地址的别名

git remote add 别名 远程库地址 //本地库创建远程库别名

4推送到远程库git push 别名 分支

git push <远程主机名> <本地分支名>:<远程分支名>

git branch -r//查看所有远程分支

5如果第一次操作需要输入账号和密钥

Settings->developer settings->personal access token->generate new token->输入令牌名字,保质期,授予权限(从命令行访问存储库,请选择repo)->generate token(密钥只存在一次)

(2)克隆

1创建新的本地库来接受

2git clone 远程地址 :仓库名字->Code->复制地址

(3)团队共创

仓库->Settings->Collaborators->输入账号->复制链接,发给那个人->(对方)打开邀请链接,接收邀请->(对方)本地修改,push->

远程库修改拉取到本地库

git pull <远程库地址别名> <远程分支名>

或者

git fetch <远程库地址别名> <远程分支名>

1把远程内容下载到本地,可以用git checkout origin/master切换远程库这个分支

2cat <文件名> 查看

3git checkout main切换回来

->git merge <远程库地址别名/远程分支名>//远程的分支合并过来

团队共创冲突解决

1git pull

问题1:如果git push -u origin master
更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支。
git fetch origin master//下载远程仓库
git reset --hard origin/master//切换这个版本
然后可以正常推送

2进入文件,人为修改
或者没有冲突
2git add .//所有文件提交

3git commit -m “注释”

4git push origin master

(4)跨团队协作

1给对方共建权限

2接受,点folk,复制仓库

3git clone 地址

4修改本地仓库,提交,推送

5github->pull requests->new pull requests->create pull request->填入标题,说明->create pull requests

对方

1pull requests->点发过来的信息->(可以对话)->commits(看他的提交)&&files changed(审核代码)->没问题回到对话点merge pull request,需要填信息->confirm merge

2git pull origin master

三、android版git操作

(1)本地操作流程

1.创建仓库VCS,enable version control integration->git->ok//相当于命令行的初始化操作

2.菜单栏git->commit(勾选amend commit(追加提交))

3.GIt->Log中间栏右击->new branch创建新分支

4.切回主分支,右击log记录->checkout->master

5.合并分支Git->merge change->选择需要合并的分支dev->merge

6.标记,右击主分支->new tag->输入a1.0

只要启动了VCS,每次提交后做修改,都会有左边绿色的标记,点击,点绿色箭头,就可以看到两者差别,也可以点灰色箭头撤销

在谷歌里搜索most ranked GitHub repo就可以看排行榜靠前的开源项目

或者http://zy2071.com/project-center/#/githubRank

(2)AS上推送到远端

创建新项目->初始化本地库->AS terminal查看身份 git config --list->commit->GIt->Github->Show project on Github->Git->push->选择->push

密钥
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
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

(3)抓取操作

另一个github账号找到我的主页->folk->code->复制地址->打开AS开始界面->Get From VSC->输入URL->clone

(4)如果对方的远端库修改了,如何自己的远端库同步

1.删了重新folk

2Git->manage remote->创建远端新别名->OK->Git->pull(远端分支->本地分支upstream)->commit->push(origin)

补充代码:

ls -la 查看当前目录,包含隐藏文件
ls 查看当前目录

cat <文件名> 查看文件内容

pwd 查看当前路径

cd ~返回主目录

git status查看当前状态 ,查看工作区,暂存区状态

vim <文本文件> 创建文本文件,进入vim编辑模式,(mac)按Esc,输入:wq退出。

:set nu在vim编辑器中显示行号

tail -n 3 <文件名> 显示文件的末三行

问题1:remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.

https://blog.csdn.net/Highlight_Jin/article/details/124015944?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165690899416781667865312%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=165690899416781667865312&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-1-124015944-null-null.142v30pc_rank_34,185v2control&utm_term=remote%3A+Support+for+password+authentication+was+removed+on+August+13%2C+2021.+Please+use+a+personal+access+token+instead.&spm=1018.2226.3001.4187

7.4 密钥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

1. 使用Github

2.1 目的

  • 借助 github 托管项目代码

2.2 基本概念

  • 仓库(Repository):用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库。

  • 收藏(Star):收藏项目方便下次查看(有100个star都很不容易

  • 复制克隆项目(Fork):(fork的项目独立存在

  • 发起请求(Pull Request):在fork的基础上,如果自己添加了内容,想要在原项目里也增加,点击这个按钮,可以向代码主人发送请求来询问是否合并我们的修改。

  • 关注(Watch):关注某个项目,当项目发生了变化,就可以第一时间收到这个通知提醒。

  • 事务卡片(Issue):发现 BUG,可以通过Issue一起讨论。

  • Github 主页:登录状态下点击左上角的 Logo 会进入:改页左侧主要显示用户动态以及关注用户或关注仓库的动态;右侧显示所有的 git 库

  • 仓库主页:主要显示项目的信息,如:项目代码,版本,收藏/关注/fork 情况等

  • 个人主页:头像,个人简介,关注我的人,我关注的人,我关注的 git 库,我的开源项目,我贡献的开源项目等信息

2.3 注册 github 账号

  1. 官方网址

  2. Sign up

  3. 按照他的过程走(邮箱很重要,需要接收邮件


  • github 是国外服务器,所以访问较慢或者无法访问,需要翻墙(Shadowsocks)
  • 私有仓库只能自己或指定的朋友才有权限操作
  • 新注册的用户必须验证邮箱后才能创建 git 库

2.4 创建 github 仓库

  • 一个仓库对应一个项目,可以通过 git 来管理仓库。
  1. new
  2. 项目名称,描述,选择权限,创建readme
  • about 可以修改项目描述

  • go to file 查找文件

  • Create new file 创建文件

  • update files 上传文件

  • code 可以下载或者通过 git 克隆

  • Issue 新建 issue

  • XiaoJiangLoveXY/test 点击用户名到用户主页,点击仓库名到仓库主页

2.5 仓库管理

  • 新建仓库文件(Create new file)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cEpyubfl-1683959678399)(github学习笔记.assets/image-20221222213510074.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-37ffMcsD-1683959678400)(github学习笔记.assets/image-20221222213648420.png)]

  • 创建成功跳转到仓库主页

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VxZg46Cs-1683959678401)(github学习笔记.assets/image-20221222214643927.png)]

  • 点击“创建php1文件”描述可以看到详细描述

  • 点击“php1.php”文件名 就是打开文件

  • 修改文件 :1.点击文件名 2.点击小笔edit 3. 修改文件后,写描述,然后提交 (和创建文件的流程一样)

  • 删除文件 :1.点击文件名 2.点击垃圾桶delete 3.写描述

  • 点击[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2DjD3g69-1683959678401)(github学习笔记.assets/image-20221222220420826.png)]可以查看过往提交记录

  • 上传文件:利用update files 然后把要上传的文件放入,并且添加描述

  • 搜索文件:打开方式一、go to file 打开 方式二、按键盘T键

    • 文件名搜索
  • 下载项目/检出项目 code -> download zip

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/521041.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3-黑马(六)

目录&#xff1a; &#xff08;1&#xff09;vue3-基础-vueuse &#xff08;2&#xff09;vue3-基础-useRequest &#xff08;3&#xff09;vue3-基础-usePagination &#xff08;1&#xff09;vue3-基础-vueuse 我们在实际中use函数的封装&#xff0c;不用我们自己写&#…

精准室内定位系统源码,采用UWB定位技术开发的智慧工厂定位系统源码

室内定位系统源码&#xff0c;采用UWB定位技术开发的智慧工厂定位系统源码 技术架构&#xff1a;单体服务 硬件&#xff08;UWB定位基站、卡牌&#xff09; 开发语言&#xff1a;java 开发工具&#xff1a;idea 、VS Code 前端框架&#xff1a;vue 后端框架&#xff1a;s…

Linux基础学习---5、磁盘查看和分区类、进程管理类

1、磁盘查看和分区类 1.1 du查看文件和目录占用的磁盘空间 du:disk usage 磁盘占用情况 1、基本语法du 目录/文件 &#xff08;显示目录下每个子目录的磁盘使用情况&#xff09; 2、情况说明选项功能-h以人们较易阅读的GBytes、MBytes、KBytes等格式自行显示-a不仅查看子目录…

iproute2 和 net-tools 介绍

路由&#xff08;Routing&#xff09; 在网络通信中&#xff0c;“路由”是一个网络层的术语。路由是指设备从一个接口上收到数据包&#xff0c;根据数据包的目的地址进行定向并转发到另一个接口的过程。路由表则是若干条路由信息的一个集合体。在路由表中&#xff0c;一条路由…

用Python+OpenCV+Yolov5+PyTorch+PyQt开发的车牌识别软件(包含训练数据)

目录 演示视频 软件使用说明 软件设计思路 演示视频 这是一个可以实时识别车牌的软件&#xff0c;支持图片和视频识别&#xff0c;以下是软件的演示视频。 车牌识别软件 点击查看代码购买地址 软件使用说明 1. 下载源码后&#xff0c;首先安装依赖库。项目所用到的依赖库已…

卷起来了!阿里最新出品“微服务全阶笔记”,涵盖微服务全部操作

近两年&#xff0c;“大厂裁员”总是凭实力冲上各大媒体头条&#xff0c;身在局中的我们早已习以为常。国内的京东&#xff0c;阿里&#xff0c;腾讯&#xff0c;字节&#xff0c;快手&#xff0c;小米等互联网公司都以不同程度的裁员比例向社会输送人才。大量有大厂经验的卷王…

一起打造漂亮的Ubuntu——2023最新版Gnome44

一起打造漂亮的Ubuntu 对于一个工程师&#xff0c;开发者&#xff0c;研究员来说&#xff0c;拥有一台漂亮的机器外加漂亮的系统界面是非常重要的。 作为Ubuntu十年的忠实粉丝&#xff0c;Linux高度依赖用户&#xff0c;无论是工作还是生活&#xff0c;我都一直以来使用着Ubu…

目标检测基础理论

一、基本知识 目标检测中RP什么意思 在目标检测中&#xff0c;RP通常指的是Recall-Precision&#xff0c;即召回率和精确率。召回率是指模型正确识别出的正样本数占所有正样本数的比例&#xff0c;而精确率是指模型正确识别出的正样本数占所有被模型识别为正样本的样本数的比例…

微服务保护——Sentinel

初识Sentinel 雪崩问题 微服务调用链路中的某个服务故障&#xff0c;引起整个链路中的所有微服务都不可用&#xff0c;这就是雪崩。 解决雪崩问题的常见方式有四种: 超时处理:设定超时时间&#xff0c;请求超过一定时间没有响应就返回错误信息&#xff0c;不会无休止等待舱壁…

谷歌浏览器network error解决方法

很多用户在使用谷歌浏览器时候会出现network error网页提示&#xff0c;很多用户不知道该如何处理这一问题&#xff0c;其实解决方法不止一种&#xff0c;小编整理了两种谷歌浏览器network error解决方法&#xff0c;一起来看看吧~ 谷歌浏览器network error解决方法&#xff1…

【精选】新年祝福(C语言),Easyx图形库应用+源代码分享

【精选】新年祝福&#xff08;C语言&#xff09;&#xff0c;Easyx图形库应用源代码分享 博主&#xff1a;命运之光 专栏&#xff1a;Easyx图形库应用 目录 【精选】新年祝福&#xff08;C语言&#xff09;&#xff0c;Easyx图形库应用源代码分享程序展示一、项目环境简单介绍一…

轨道列车救援VR模拟仿真系统

列车故障是地铁运营中常见的问题&#xff0c;如何迅速准确地救援列车故障是保障地铁运营安全的重要措施。为此&#xff0c;广州华锐互动提供轨道列车救援VR模拟仿真系统定制开发&#xff0c;可以在安全、高效的情况下进行列车故障救援演练&#xff0c;有效提高救援人员的应急能…

在 oracle 中执行 sql 语句时,报错:“ORA-00001: 违反唯一约束条件 SYS_C0024202”

在 oracle 中执行 sql 语句时&#xff0c;报错&#xff1a;“ORA-00001: 违反唯一约束条件 SYS_C0024202” 报错信息如下&#xff1a; 表为“WK_ADMIN_USER” 解决方法&#xff1a; 1、查看违反约束的序列对应的数据库表与字段 select a.constraint_name,a.constraint_type,b…

【HTML】

目录 1. 什么是 HTML &#xff1f;HTML 的作用 2. HTML 常见标签 2.1 注释标签 2.2 标题标签&#xff1a;h1 - h6 2.3 段落标签&#xff1a;p 2.4 换行标签&#xff1a;br ​编辑 2.5 格式化标签 2.6 图片标签&#xff1a;img 2.7 超链接标签&#xff1a;a 2.7.1 外…

新入职一个00后卷王,每天加班到12点,太让人崩溃了····

在程序员职场上&#xff0c;什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事&#xff0c;我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事&#xff0c;可遇不可求&#xff0c;向他学习还来不及呢。 真正让人反感的&#xff0c;是技术平平&…

CSS3中Flex弹性盒子布局

文章目录 一、介绍二、基本概念三、容器属性1.flex-direction2.flex-wrap3.flex-flow4.justify-content5.align-items6.align-content 四、项目属性1.order2.align-self3.flex 一、介绍 Flex 是 Flexible Box 的缩写&#xff0c;意为“弹性布局”或者“弹性盒子”&#xff0c;…

基于AT89C51单片机的交通灯设计

点击链接获取Keil源码与Project Backups仿真图&#xff1a; https://download.csdn.net/download/qq_64505944/87779238?spm1001.2014.3001.5503 源码获取 主要内容&#xff1a; 在日常生活中&#xff0c;交通灯是一项必不可少的公共设施&#xff0c;可 以维护道路的畅通和交…

English Learning - L3 综合练习 2 VOA-Color 2023.05.10 周三

English Learning - L3 综合练习 2 VOA-Color 2023.05.10 周三 句 1 the color green is natual for trees and grass句 2 But it is an unnatural color for humans拓展 be adj. for 句 3句 4句 5句 6句 7句 8 The color black is used often in expressions句 9句 10句 11句…

【GAMES101】作业2学习总结

本系列博客为记录笔者在学习GAMES101课程时遇到的问题与思考。 GAMES101&#xff1a;课程官网GAMES101&#xff1a;B站视频GAMES101&#xff1a;相关文件下载(百度网盘) 一、基础题 本次作业的目的是为了让我们熟悉三角形栅格化的相关操作&#xff0c;通过Assignment2.pdf可以…

踩坑集锦之你真的明白Java类路径的含义吗?

踩坑集锦之你真的明白Java类路径的含义吗&#xff1f; 引言前置知识补充故事还要从程序启动讲起...C和Java的桥接类LauncherHelper主类是如何被加载的加餐: 如何利用jdk预留的口子&#xff0c;替换系统类加载器为我们自定义的类加载器 Launcher启动类的初始化启动类加载器类路径…