有关Git基础操作的学习
Git简介
Git是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。
Git 易于学习, 占地面积小,具有闪电般的快速性能。它具有诸如Subversion,CVS,Perforce和ClearCase之类的SCM工具,并且具有廉价的本地分支,方便的暂存区域和 多个工作流等功能。
首先查看电脑上有没有git
- 打开终端,输入git命令,一般安装了xcode之后会自动安装git,这里git的安装不再赘述
git

显示以上则表示安装了git
配置本地设置
- 配置username和email(--global代表了全局设置)
git config --global user.name "r1cardo"
git config --global user.email "86329863@qq.com"
- 通过终端命令创建ssh key
ssh-keygen -t rsa -C "86329863@qq.com"

由于我已经创建了ssh key,这里选的n,没有创建过的,会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进入文件夹,打开id_rsa.pub,复制里面的key。
使用终端查看.ssh/id_rsa.pub文件
cat .ssh/id_rsa.pub

- 接下来登录 GitHub,点击进入GitHub官网登录(如果你还没有注册github账号先注册一个账号),登录成功后,添加ssh key,点击Settings。

- 进入设置页面,首先点击 SSH and GPG keys ,再点击 new SSH key 添加key。

*接下来填写一个title,然后将刚才在终端复制的key 粘贴进来。

- 接下来使用终端进行链接验证。若提示 Are you sure you want to continue connecting (yes/no/[fingerprint])? 输入 yes
ssh -T git@github.com
若终端输出如图所示,说明已经链接成功。

- 然后在Github上面新建项目并且clone到本地,这里不再赘述,如果clone较慢,可以使用镜像,在原链接上加上cnpmjs.org
https://github.com.cnpmjs.org/xxx
接着就是对仓库代码进行修改,准备上传
- 进入到clone的文件夹的路径后,首先新建分支,在当前的子分支上面提交代码到远程子分支上,如果是第一次新建分支,是默认没有本地主分支的,需要先push一下main分支
git push origin main
- 然后本地有main分支后,将远程main分支的代码pull下来,因为每次提交前必须保证你的main分支上的是最新的代码,否则大概率会出问题(必须在main分支上执行)
git pull origin main
- 然后创建分支
git branch <分支名>
- 可以通过命令查看有哪些分支
git branch
- 然后切换到新建的分支上
git checkout <分支名>
- 把本地分支推到远端,让远端也有你的分支,用于后面提交代码
git push origin <分支名>
提交代码
- 在新建的分支上写完代码之后,就可以提交代码了。此时应该在你新建的分支上
git status 可以查看自己写了什么东西
git add . 点代表所有文件,放入暂存区中
git commit -m "这里填写本次commit的描述"
git push origin <分支名> 然后将代码push到你的远端分支上(有可能报错,根据错误hint来修改)
- 在将修改的代码push到远端分支后,远端分支就有了修改,接下来就是用main分支合并你的分支
git checkout <分支名> 首先切换到你的分支
git pull origin <分支名> 然后将你的远端分支的代码pull下来(因为有可能不止一人在你的分支上修改,所以要保证你的分支上的代码也是最新的)
git checkout main 然后切换到主分支
git merge <分支名> 将你的分支合并到main分支
git push origin main 再将你的main分支的代码修改push到远端的main分支
git checkout <分支名> 最后切换到你的分支继续工作
总结
- 总的来说,分支分为本地分支和远程分支,你每次修改代码并上传必须在自己的分支上进行,最后再用main分支合并,并且每次修改前都必须保证当前代码是代码库中的最新代码,不然很容易功亏一篑,在网上看别人写的最好用rebase命令不要用merge命令,现在感觉还用不到rebase,等以后深入研究再了解,一些细节借鉴了别人的博客:
https://blog.csdn.net/qq_39052513/article/details/104637326
https://blog.csdn.net/weixin_43367262/article/details/100575221
https://blog.csdn.net/bufegar0/article/details/109597640
有关Git基础操作的学习的更多相关文章
- Git基础操作
配置秘钥 1.检查本机有没有秘钥 检查~/.ssh看看是否有名为d_rsa.pub和id_dsa.pub的2个文件. $ ~/.sshbash: /c/Users/lenovo/.ssh: Is a ...
- 《Pro Git》笔记2:Git基础操作
第二章 Git基础 Git基础包括:版本库的创建和获取,文件添加修改提交等基本操作,状态查询,远程版本库管理和同步,打标签. 1.取得项目的Git版本库 基于Git的工作流要以Git版本库为基础,即可 ...
- python flask学习(1)与Git基础操作
今天从简单的flask开始完成Flask web开发的学习.今天学习了Git和GitHub项目的提交. Git尝试提交过程中出现了"Could not read from remote re ...
- Git 学习笔记--1.Git基础操作
取得项目的Git仓库 有两种方式取得Git项目仓库.第一种是在现存的目录下,通过导入所有文件来创建新的Git仓库.第二种是从已有的Git仓库克隆出一个新的镜像仓库. 在工作目录中初始化新仓库 要对现 ...
- Git 基础操作
[TOC] 在Linux上安装Git $ git --version #查看git的版本号 $ sudo apt-get install git # 安装git 创建版本库 $ git init # ...
- 【Git】Git基础操作
repository:版本库又名仓库,可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以&q ...
- python git 基础操作
模块安装 pip install gitpython 基本用法 1. 初始化 from git import Repo Repo.init('/data/test2') # 创建一个git文件夹 # ...
- 『现学现忘』Git基础 — 14、Git基础操作的总结与补充
目录 1.Git本地版本库结构 2.Git常用操作方法 3.补充:添加多个文件到暂存区 4.补充:提交操作未写备注 5.补充:从工作区直接提交到版本库 1.Git本地版本库结构 如下图所示: 工作区( ...
- 一篇长文说 git 基础
版本管理在产品级开发中是非常重要的一个部分,它涉及到团队协作,且影响到产品最终的发布.上线以及测试环节,当前最流行的版本控制系统是 git.git 内容非常多,本文尽量克制地来介绍 git 的基础内容 ...
随机推荐
- Pycharm Fiddler Requests https in _create raise ValueError("check_hostname requires server_hostname
打开Fiddler, 开启抓取https, 在PyCharm中使用requests 发送https请求, 遇到 in _create raise ValueError("check_ho ...
- GO-02-helloworld
package main /** package main表示一个可独立执行的程序,每个Go应用程序都需要包含一个名为main的包, 并且该包包含一个叫main()的函数(该函数是Go可执行程序的执行 ...
- 牛客练习赛14B 区间的连续段
题目链接 点我跳转 题目大意 给定一个长度为 \(N\) 的序列 \(A\) 和一个常数 \(K\) 有 \(M\) 次询问 每次询问查询一个区间 \([L , R]\) 内所有数最少分成多少个连续段 ...
- webpack的构建流程
一.运行流程 webpack 的运行流程是一个串行的过程,它的工作流程就是将各个插件串联起来 在运行过程中会广播事件,插件只需要监听它所关心的事件,就能加入到这条webpack机制中,去改变webpa ...
- 基于excel的接口自动化测试框架:支持参数化、关联等
1. 框架结构说明 2. 框架代码实现 action 包 case_action.py business_process 包 main_process.py util 包 global_var.py ...
- 已知a=a
高中时酷爱经济学. 薄薄的纸片竟然决定着整个社会的运转趋势,整个人生的起伏也是靠着纸片来衡量的. 可笑的是你怎么闹腾也逃不过康波周期等一系列命中注定的路线,即,已知a=a,那么a等于且仅等于a. 所有 ...
- 03- Linux目录与文件进阶操作
第三课 目录与文件进阶操作cat (一次性全部输出文件内容) cat -n 文件名 显示行号 cat -b 文件名 空行不显示行号less (分页显示,可以上下翻页,光标键上下键,PageUp ...
- php异常及错误信息捕获并记录日志实现方法全解析
php异常处理 什么是异常? PHP 5 提供了一种新的面向对象的错误处理方法.异常处理用于在指定的错误(异常)情况发生时改变脚本的正常流程.这种情况称为异常. 当异常被触发时,通常会发生: 当前代码 ...
- Linux系统登录相关
whoami:查看当前用户 who:查看当前登录系统的所有用户 tty指的是主机的图形化界面的面板 pts/x指的是远程ssh连接的窗口 who -b:主机的上一次启动时间 w:显示已经登陆系统的用户 ...
- Docker配置阿里云镜像加速器及开启远程连接
适用于CentOS-7版本 mkdir /etc/docker vim /etc/docker/deamon.json 添加以下内容配置镜像 { "registry-mirrors" ...