小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)

本文创作时版本为 Git-2.41.0,使用目标为笔记存储和代码库,部分公司向使用的设置可能不一样

一 Git

1.1 何为 Git

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理项目、项目版本管理。
原本是为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第1张图片
Remote:远程仓库
Repository:本地仓库
Index / Stage:暂存区
Workspace:工作区

1.2 分布式版本控制系统

SVNCVS集中式版本控制系统

  1. 版本库是集中放在中央服务器的
  2. 集中式版本控制系统必须联网
  3. 工作流程:
    从中央服务器哪里得到最新的版本
    推送到中央服务器。
  4. 优点:较好的权限管理功能,操作相较简单,可以精确控制每个目录的权限
  5. 缺点:中心服务器出问题会影响所有人的工作,速度和分支管理不如git

Git分布式版本控制系统

  1. 没有中央服务器的,每个人的电脑就是一个完整的版本库;
  2. 在不联网的情况下,照样可以提交到本地仓库,可以查看以往的所有log(日志文件),等到有网的时候,push到远程即可;
  3. 工作流程:
    修改本地的版本库
    各自的修改推送给对方即可
  4. 优点:非常强大的分支管理功能。
    使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
  5. 缺点:权限管理不方便,需要使用插件gitolite或者gitlab

1.3 GIt的安装和配置步骤(详细繁琐版)

首先进入GitHub官网git-scm.com,下载适合自己电脑的版本,我的是64位Windows
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第2张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第3张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第4张图片
下载完安装包之后运行
在安装过程中直接默认选项即可,如果可以修改的我会在下图标出。
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第5张图片
可以添加两个选项,第一个是创建个快捷方式,第二个是在Windows终端添加Git bash,每日检查更新就不必了(Check daily)
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第6张图片
在开始菜单创建快捷方式,直接默认
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第7张图片

用Windows默认的终端文本编辑器
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第8张图片
使用默认的分支存储库名称
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第9张图片
接受第三方软件使用Git
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第10张图片
使用Git捆绑的ssh
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第11张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第12张图片
处理回车的方式
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第13张图片
使用MinTTY默认终端,在滚回、调整窗口大小、文本字体和选择较为灵活
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第14张图片
设置git pull 的行为,分别是快进与合并、重新定位、仅快进。
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第15张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第16张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第17张图片

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第18张图片

任意空白处右键——Git Bash Here,即可进入Git的命令窗口
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第19张图片

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第20张图片
嗯,这一小节终于结束了。

1.4 Git常用命令

全局配置

git config --list        #查看git的配置信息
git config --global --list  #查看git的全局配置信息(user.name、user.email)
git config --global user.name "user.name"      #设置本机所有的Git仓库用户名
git config --global user.email "user.email"         #设置本机所有的Git仓库邮箱
git config --global user.password "password"   #配置文件一般C:\Users\Administrator的.gitconfig文件中,故一般不在配置文件中设置密码
git config --global --unset user.name  #删除某个全局配置项
clear      #清空


ssh-agent bash
ssh-add ~/.ssh/id_rsa.github
ssh-add ~/.ssh/id_rsa.gitee     #将新的私钥加入到 SSH agent 中

touch ~/.ssh/config   #多账号配置,生成config文件
ssh -T [email protected]
ssh -T [email protected]   #SSH Key测试

cd E:
cd 文件夹    #进入不同位置

git init     #将文件夹初始为仓库
git remote add origin [email protected]:仓库SSH   #关联远程仓库

git remote add origin [email protected]:名字/仓库名字.git  #名字是github注册的名字
git add 文件名    #将内容从工作目录添加到暂存区
git add .        #将所有新增的文件都添加暂存区

git commit -m "分支名"      #所有通过 git add 暂存的文件提交到本地仓库
git push -u origin master   #上传文件,如果带有-u参数,则指定了默认的远程主机, 这样以后再推入时,可以简写为:git push
git push origin master     #上传文件


git status	#展示工作区及暂存区域中不同状态的文件
git reset HEAD 文件名	#从暂存区移除指定文件
git checkout -- 文件名	#从本地仓库恢复指定文件
git pull	#拉取远程仓库的数据
git log    #查看git历史提交日志
git reflog #查看git所有提交日志

1.5 配置顺序

  1. 设置用户名和仓库邮箱
git config --global user.name "user.name"      
git config --global user.email "user.email"
  1. 生成GithubGiteeSSH Key(加两个回车)
ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "user.email"
ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitee -C "user.email"

C:\Users\Administrator\.ssh下生成了
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第21张图片

  1. 由于默认只读取 id_rsa,为了让 SSH 识别新的私钥,需要将新的私钥加入到 SSH agent
ssh-agent bash
ssh-add ~/.ssh/id_rsa.github
ssh-add ~/.ssh/id_rsa.gitee

  1. 为了便于GithubGitee都能使用Git,需要进行多账号配置,生成config文件
touch ~/.ssh/config

在这里插入图片描述
并在该文件里填写

#Default gitHub user Self
Host github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa.github

# gitee
Host gitee.com
    Port 22
    HostName gitee.com
    User git
    IdentityFile ~/.ssh/id_rsa.gitee

完成

二 GitHub

2.1 创建库

进入https://github.com/官网注册,如果速度慢可以用steam++等合法科学上网,谷歌浏览器的翻译比较好
点击右上角加号,New repository创建新的存储库
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第22张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第23张图片

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第24张图片
下面就要让自己的电脑克隆一个自己所创建的库,方面自己电脑上的代码同步到GitHub你所创建的库当中。

2.2 添加SSH Key

将1.5生成的id_rsa.github.pub内容复制到SSH Key中

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第25张图片

点击确定即可

2.3 SSH Key测试

输入下列指令,回车,输入yes,再回车,红框处出现Hi表示公钥添加成功:

ssh -T [email protected]

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第26张图片
别忘记了yes!!!

2.4 初始化本地仓库

选择一个文件夹作为本地仓库,并在此文件夹打开Git Bash
也可以使用cd的方式进入文件夹(红框内是所在位置)
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第27张图片
输入git init将文件夹初始为仓库
显示下图即表示成功
在这里插入图片描述

2.5 关联仓库

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第28张图片
复制仓库SSH,输入git remote add origin [email protected]:仓库SSH 关联远程仓库
在这里插入图片描述

2.6 上传文件

在需上传文件所在文件夹Bash Here
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第29张图片
建立链接——add添加文件夹——commit标注分支——push推送

git remote add origin [email protected]:名字/仓库名字.git  #名字是github注册的名字
git add 文件名
git commit -m "分支名" 
git push -u origin master 

比如我要把3.md文件放到我的账号yanqiu12138git_test_notesmain分支中
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第30张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第31张图片

首先,要在本地库的位置Bash Here,即3.md所在文件夹,或者在运行框里用cd命令切换位置到库位置

分别输入
cd D:
cd Code/Github
git add 3.md
git commit -m "main" 
git push -u origin master 

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第32张图片
在这里插入图片描述

2.7 直接在GitHub上传文件

  1. 进入仓库,点击仓库右上方的Add file—— Create new file按钮:
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第33张图片
  2. 注意后缀是.md结尾的文件点击预览的时候才能被格式化,否则就是一个普通的文本

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第34张图片

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第35张图片
3. 写完点击commit changes(提交更改)小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第36张图片
4. Extended description是描述本次提交做了什么,写笔记完全不需要
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第37张图片

2.8 批操作

批操作指批量打包文件到本地或上传。

2.8.1 批量下载

  1. 直接下载:点击仓库右上角Code——Download ZIP
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第38张图片
  2. 同样点击仓库右上角Clone or download ,在下拉菜单中复制所给出的地址,在想要保存的文件夹位置Git Bash Here,输入下面代码,稍后片刻就好了:
git clone 地址

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第39张图片

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第40张图片
在这里插入图片描述

2.8.2 批量上传

  1. 直接上传小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第41张图片

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第42张图片

  1. 将上传文件保存在本地库,然后Git Bash Here,输入下面代码,
git remote add origin [email protected]:名字/仓库名字.git  #名字是github注册的名字
git add 文件夹名
git commit -m "分支名" 
git push -u origin master 

三 Gitee

Gitee是中文版的GitHub,相较于Github代码略少,但胜在国内可以稳定访问且5 人以下小团队免费。

3.1 创建库

  1. 到官网注册Gitee
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第43张图片
  2. 添加邮箱:右上角“账号设置”
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第44张图片

3.2 添加SSH Key

将1.5生成的id_rsa.gitee.pub内容复制到SSH Key中

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第45张图片

3.3 SSH Key测试

分别输入下列指令,回车,输入yes,再回车,红框处出现Hi表示公钥添加成功:

ssh -T [email protected]

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第46张图片
别忘记了yes!!!

3.4 初始化本地仓库

选择一个文件夹作为本地仓库,并在此文件夹打开Git Bash
也可以使用cd的方式进入文件夹(红框内是所在位置)
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第47张图片
输入git init将文件夹初始为仓库
显示下图即表示成功
在这里插入图片描述

2.5 关联仓库

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第48张图片

复制仓库SSH,输入git remote add origin 仓库SSH 关联远程仓库
在这里插入图片描述

2.6 上传文件

在需上传文件所在文件夹Bash Here
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第49张图片
建立链接——add添加文件夹——commit标注分支——push推送

git add 文件名
git commit -m "分支名" 
git pull --rebase origin master(第一次使用的库需要这样建立链接)
git push -u origin master (之后不需要-u)

比如我要把1.md文件放到我的账号雁丘gitee_test_notestest分支中
在这里插入图片描述

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第50张图片
在这里插入图片描述

2.7 Gitee团队协作

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第51张图片
管理—仓库成员管理–开发者–添加成员–复制链接

四 报错原因和解决方法集锦

1. No such file or directory 输入中文符号或者涉及切换盘符

在这里插入图片描述
涉及盘符切换时要分两步,切换盘符和切换路径

cd D:
cd Code/Github

2. 初始化git项目时,报错:Reinitialized existing Git repository in说明已被初始化过了

注意:出现.git文件夹说明初始化成功,有些版本默认隐藏,右上角显示隐藏的项目就能查看
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第52张图片
想重新初始化只需把.git文件删除
或者可以在当前文件下的控制台中输入 ls-a 查看,有.git 的话,使用 rm -rf .git 删除之后重新初始化就可以了
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第53张图片

3. Host key verification failed

在这里插入图片描述
注意不是连敲两个回车,第二个回车前输入yes

4. Nothing to commit, working tree clean

在这里插入图片描述
暂存区没文件或者文件被git add过了,只需随便修改一下该文件就行

5. ! [rejected] master -> master (fetch first) error: failed to push some refs to ‘github.com:yanqiu12138/git_test_notes.git’

报错是因为,每个仓库都有一个分支,也可以理解为大仓库里的小仓库,我们只是跟线上远程仓库有了关联,但没有跟线上远程仓库的某个分支关联,所以我们没法提交
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第54张图片

在终端输入 git pull --rebase origin master 即可跟刚创建的线上远程仓库的默认分支master关联
这时再执行一下 git push -u origin master 即可将我们的项目文件上传到关联的线上远程文件中

五 常用推荐

5.1 Google Chrome翻译及插件Octotree(需要)

Chrome翻译在使用Github全英界面时十分方便,各种弹窗、插件、下拉菜单都能迅速自动翻译
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第55张图片
插件Octotree Github的导航栏
可以在设置——扩展程序——Chrome应用商店找到,直接应用即可
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第56张图片
打开代码库后,能发现网页左侧出现
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第57张图片
鼠标覆盖时,会以树的形式显示库的文件
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第58张图片
若出现报错:This branch was either deleted or you don’t have access to it. Please go to Settings to login with GitHub OAuth or input a GitHub access token.(该分支已被删除或您无权访问它。请前往“设置”以使用 GitHub OAuth 登录或输入 GitHub 访问令牌。)
是因为插件访问时需要github的令牌,创建一个给他就行
解决方法:点击设置点击钥匙按钮
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第59张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第60张图片
到期日选择没有过期时间,选择范围全选(企业用户自己研究下,个人的话全选完事)
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第61张图片
复制生成的代币
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第62张图片

粘贴到这里,完成

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第63张图片

5.2 TortoiseGit

5.2.1 TortoiseGit安装

小白使用Git Bash维护Gitee、GitHub神器,是一个开发的Git版本控制系统的客户端,Git是命令行操作模式,而TortoiseGit是界面化操作模式

  1. 下载官网https://tortoisegit.org/download/注意下载相应的语言包
    在这里插入图片描述
    先安装语言包
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第64张图片
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第65张图片
    除了修改路径一路默认
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第66张图片
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第67张图片
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第68张图片
    小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第69张图片
    输入git的Email

小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第70张图片
后面配置需要使用Putty,默认选择,点击完成
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第71张图片

5.2.2 TortoiseGit配置

在仓库处右键,TortoiseGit——设置,进入配置界面
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第72张图片
小白新手一文完成Git+Github/GITEE傻瓜式入门详解部署教程(内含TortoiseGit配置)_第73张图片

你可能感兴趣的:(杂论,git,github,gitee)