本文创作时版本为 Git-2.41.0,使用目标为笔记存储和代码库,部分公司向使用的设置可能不一样
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理项目、项目版本管理。
原本是为了帮助管理 Linux
内核开发而开发的一个开放源码的版本控制软件。
Remote
:远程仓库
Repository
:本地仓库
Index / Stage
:暂存区
Workspace
:工作区
SVN
、CVS
是集中式版本控制系统,
Git
是分布式版本控制系统
log
(日志文件),等到有网的时候,push
到远程即可;SHA-1
哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。gitolite
或者gitlab
。首先进入GitHub
官网git-scm.com,下载适合自己电脑的版本,我的是64位Windows
下载完安装包之后运行
在安装过程中直接默认选项即可,如果可以修改的我会在下图标出。
可以添加两个选项,第一个是创建个快捷方式,第二个是在Windows终端添加Git
bash,每日检查更新就不必了(Check daily)
在开始菜单创建快捷方式,直接默认
用Windows默认的终端文本编辑器
使用默认的分支存储库名称
接受第三方软件使用Git
使用Git
捆绑的ssh
处理回车的方式
使用MinTTY
默认终端,在滚回、调整窗口大小、文本字体和选择较为灵活
设置git pull
的行为,分别是快进与合并、重新定位、仅快进。
任意空白处右键——Git Bash Here
,即可进入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所有提交日志
git config --global user.name "user.name"
git config --global user.email "user.email"
Github
、Gitee
的SSH 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
下生成了
id_rsa
,为了让 SSH
识别新的私钥,需要将新的私钥加入到 SSH agent
中ssh-agent bash
ssh-add ~/.ssh/id_rsa.github
ssh-add ~/.ssh/id_rsa.gitee
Github
与Gitee
都能使用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
完成
进入https://github.com/官网注册,如果速度慢可以用steam++等合法科学上网,谷歌浏览器的翻译比较好
点击右上角加号,New repository
创建新的存储库
下面就要让自己的电脑克隆一个自己所创建的库,方面自己电脑上的代码同步到GitHub
你所创建的库当中。
将1.5生成的id_rsa.github.pub
内容复制到SSH Key中
点击确定即可
输入下列指令,回车,输入yes,再回车,红框处出现Hi表示公钥添加成功:
ssh -T [email protected]
选择一个文件夹作为本地仓库,并在此文件夹打开Git Bash
也可以使用cd的方式进入文件夹(红框内是所在位置)
输入git init
将文件夹初始为仓库
显示下图即表示成功
复制仓库SSH,输入git remote add origin [email protected]:仓库SSH
关联远程仓库
在需上传文件所在文件夹Bash Here
建立链接——add
添加文件夹——commit
标注分支——push
推送
git remote add origin [email protected]:名字/仓库名字.git #名字是github注册的名字
git add 文件名
git commit -m "分支名"
git push -u origin master
比如我要把3.md
文件放到我的账号yanqiu12138
的git_test_notes
的main
分支中
首先,要在本地库的位置Bash Here
,即3.md
所在文件夹,或者在运行框里用cd命令
切换位置到库位置
分别输入
cd D:
cd Code/Github
git add 3.md
git commit -m "main"
git push -u origin master
3. 写完点击commit changes
(提交更改)
4. Extended description
是描述本次提交做了什么,写笔记完全不需要
批操作指批量打包文件到本地或上传。
Code
——Download ZIP
Clone or download
,在下拉菜单中复制所给出的地址,在想要保存的文件夹位置Git Bash Here
,输入下面代码,稍后片刻就好了:git clone 地址
Git Bash Here
,输入下面代码,git remote add origin [email protected]:名字/仓库名字.git #名字是github注册的名字
git add 文件夹名
git commit -m "分支名"
git push -u origin master
Gitee是中文版的GitHub,相较于Github代码略少,但胜在国内可以稳定访问且5 人以下小团队免费。
将1.5生成的id_rsa.gitee.pub
内容复制到SSH Key中
分别输入下列指令,回车,输入yes,再回车,红框处出现Hi表示公钥添加成功:
ssh -T [email protected]
选择一个文件夹作为本地仓库,并在此文件夹打开Git Bash
也可以使用cd的方式进入文件夹(红框内是所在位置)
输入git init
将文件夹初始为仓库
显示下图即表示成功
复制仓库SSH,输入git remote add origin 仓库SSH
关联远程仓库
在需上传文件所在文件夹Bash Here
建立链接——add
添加文件夹——commit
标注分支——push
推送
git add 文件名
git commit -m "分支名"
git pull --rebase origin master(第一次使用的库需要这样建立链接)
git push -u origin master (之后不需要-u)
比如我要把1.md
文件放到我的账号雁丘
的gitee_test_notes
的test
分支中
cd D:
cd Code/Github
注意:出现.git
文件夹说明初始化成功,有些版本默认隐藏,右上角显示隐藏的项目就能查看
想重新初始化只需把.git
文件删除
或者可以在当前文件下的控制台中输入 ls-a
查看,有.git
的话,使用 rm -rf .git
删除之后重新初始化就可以了
暂存区没文件或者文件被git add
过了,只需随便修改一下该文件就行
报错是因为,每个仓库都有一个分支,也可以理解为大仓库里的小仓库,我们只是跟线上远程仓库有了关联,但没有跟线上远程仓库的某个分支关联,所以我们没法提交
在终端输入 git pull --rebase origin master
即可跟刚创建的线上远程仓库的默认分支master关联
这时再执行一下 git push -u origin master
即可将我们的项目文件上传到关联的线上远程文件中
Chrome翻译在使用Github全英界面时十分方便,各种弹窗、插件、下拉菜单都能迅速自动翻译
插件Octotree Github的导航栏
可以在设置
——扩展程序
——Chrome应用商店
找到,直接应用即可
打开代码库后,能发现网页左侧出现
鼠标覆盖时,会以树的形式显示库的文件
若出现报错: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 Bash维护Gitee、GitHub神器,是一个开发的Git版本控制系统的客户端,Git是命令行操作模式,而TortoiseGit是界面化操作模式