初识Git的那些年

一、Git登录篇

登陆github必须先创建SSH key

因为本地Git仓库和GitHub仓库之间的传输是通过SSH加密传输的,GitHub需要识别是否是你推送,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送,所以需要配置ssh key。

1.创建SSH Key。

在用户主目录(C:\Users\Administrator)下,看看有没有.ssh文件,如果有,再看文件下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接到下一步。如果没有,打开Git Bash,输入命令,创建SSH Key

$ ssh-keygen -t rsa -C "你自己注册GitHub的邮箱"

2.接下来

到GitHub上,打开“Account settings”–“SSH Keys”页面,然后点击“Add SSH Key”,填上Title(随意写),在Key文本框里粘贴 id_rsa.pub文件里的全部内容。

 id_rsa.pub 默认在C:\Users\Administrator\.ssh

每台想要登陆某个github账号的主机都需要有一个对应的key,例如你有一个github账号,你在你的笔记本和台式上都要创建key

3.git bash里输入下面的命令登陆

$ ssh -T git@github.com

初识Git的那些年插图

如果看到 hi + 你的用户名说明密钥验证通过了,你已经可以上传下载了

4.设置username和email,因为github每次commit都会记录他们

git commit 命令会记录提交者的信息,所以使用git前必须先添加两条信息

$ git config --global user.name "你的GitHub登陆名"
$ git config --global user.email "你的GitHub注册邮箱" 

(其实可以不和github上面的用户名邮箱一致,只是为了避免混淆)

5.接下来就是把本地仓库传到github上去

$ git remote add origin git@github.com:userName/yourProject.git 

//关联一个远程库命令,git@后面填写你的github repository(仓库),在github里面创建仓库后有http和ssh的链接,origin是你给这个仓库起的名字,可以自定义,下面命令中的origin也要相应改变

初识Git的那些年插图1

git push -u origin master //把本地已经commit 的结果push到github的origin 仓库的master分支中

6.Git添加多账号

我们可能会需要在一台电脑上以不同的github账户去使用git,这时就需要去解决如何管理本机上的多个ssh key的问题了。

(1).生成新ssh key

如果我们电脑上已经存在了一个ssh key,那么我们需要在我们电脑上生成第二个你想在本电脑上使用的id_rsa,使用命令:ssh-keygen -t rsa -C "你的github注册邮箱"

下图红色标注部分会提示你把新生成的id_rsa存放到哪里,此处默认会存放在c盘的用户名下的.ssh文件夹下(即你第一个github用户ssh key存放的目录),因此我们需要输入路径/c/Users/DodoMonster/.ssh(注意此路径是你的系统盘下用户目录安放ssh密钥的目录,请使用自己电脑上相对应的目录),最后我以“id_rsa_me”重新命名了ssh key防止默认与已有的ssh key重复。

初识Git的那些年插图2

在输入了路径后,会提示你输入提交项目时输入的密码,不输则表示不用密码,这是为了防止别人随便在你的项目上push东西,所以最好还是输入一下你的密码。回车,再重复输入确认回车即可。

(2).添加新ssh key

默认SSH只会读取id_rsa,所以为了让SSH识别新的私钥,需要将其添加到SSH agent
使用命令:ssh-add ~/.ssh/id_rsa_me

初识Git的那些年插图3

如果报错:Could not open a connection to your authentication agent.无法连接到ssh agent
可执行ssh-agent bash命令后再执行ssh-add

然后将公钥添加到git账号中 https://github.com/settings/keys

(3).配置config文件

查看.ssh文件中是否存在config文件

如果已存在则直接编辑config文件,命令:vim config #这是linux的命令,进入了vim界面后按a或i或A或I进入编辑模式,编辑完成后按esc键输入:wq 保存文件退出

如果不存在则需要创建config文件,命令:touch config,再对config文件进行编辑

初识Git的那些年插图4

对config文件进行配置填写:

#Default 第一个账号(123456@xxxx.com)

Host default
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa_me
    
   
#second 第二个账号(38894403@xxxx.com)
    
Host zc
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa

其中Host 后的名字可以随意方便自己记忆,但HostName必须为github.com(或者其它git地址)。

(4).测试是否配置成功

使用命令:

ssh -T git@zc
初识Git的那些年插图5

出现如图的欢迎语则为配置成功。

注意:配置完成后,在连接Host不是github.com的github仓库时,远程库的地址要对应地做一些修改:

初识Git的那些年插图6

而并非原来的git@github.com:38894403/react.git

这样每次连接都会使用id_rsa_me与服务器进行连接。

配置至此,大功告成!

(5).关键点

初识Git的那些年插图7
初识Git的那些年插图8

二、Git命令篇

1.Git:clone、update命令

1.把大神的代码clone到本地,或者clone自己github上的代码,使用指令:

git clone https://github.com/anran-world/Anranawsl.git
Or
git clone -b <指定分支名> <远程仓库地址>

2.在本地随便建个文件夹,地址栏输入cmd打开,然后输入上面指令

初识Git的那些年插图9

2.Git查看状态命令

1.查看当前的git仓库状态,可以使用git status

git status

2.如果是在刚才新建的文件夹输入git status会出现下图所示,git目录不对

3.先用cd 命令切换到yoyoketang这个repository目录

4.再输入git status可以看到On branch master,这个说明已经在master分支上了

初识Git的那些年插图10

3.Git更新文件命令

1.在yoyoketang文件夹下更新东西,比如我上传2个资料文件

初识Git的那些年插图11

2.更新后使用git add * (*是更新全部,包括.gitignore里面忽略的所有)

git add *

3.接着输入git commit -m “更新说明“,commit只是提交到缓存区域

git commit -m "更新说明"
初识Git的那些年插图12

4.如果是多人同时开发维护代码,得先git pull ,拉取当前分支最新代码

git pull

5.最后git push origin master,最后一步才是push到远程的master分支上

(最好不要上传太大文件,要不然太慢了)

初识Git的那些年插图13

6.打开github界面就能看到同步了

初识Git的那些年插图14

4.Git分支命令

1. Git创建分支命令

git branch anran

2. Git切换分支命令

git checkout anran

3. Git创建并切换分支命令

想要新建一个分支并同时切换到那个分支上,你可以运行一个带有 -b 参数的 git checkout 命令:

git checkout -b anran
//Switched to a new branch "anran"

// 即两条命令的简写
git branch anran
git checkout anran

4. 将anran分支推送到远程

git push origin anran:anran
git push origin anran(名称不变时的简写)

5. 建立本地至上游(远程)分支的链接,这样代码才能提交到远程

git branch --set-upstream-to=orgin/develop

6.取消对develop分支的跟踪

(需要取消跟踪时才操作)

git branch --unset-upstream develop

7.合并B分支到A分支

git checkout A  //切换到A分支(都是最新版本的)
git merge B  //合并B分支

5.Git常用配置命令

1.npm使用淘宝镜像源

(能加快npm下载速度)

npm config set registry https://registry.npm.taobao.org

2.node-sass使用淘宝镜像

(能解决node-sass安装失败问题)

npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/

3.npm恢复官方镜像源

(发布npm包时必须切换回官方镜像源)

npm config set registry https://registry.npmjs.org

4.git 配置全局用户名、邮箱

(用于git工具记录代码修改的作者信息)

git config --global user.name Anran
git config --global user.email Anran@qq.com

5.git 配置ssh

ssh-keygen -t rsa

6.git 配置全局字符集编码

(防止中文commit信息乱码)

git config --global i18n.commitencoding utf-8
git config --global i18n.logoutputencoding utf-8
export LESSCHARSET=utf-8

7.git 配置全局不自动转换换行符

(解决windows和max系统的默认换行符不一致问题)

git config --global core.autocrlf false

8.git 设置能检测文件名大小写

(在需要配置的项目根目录下运行该命令)

git config core.ignorecase false

三、Git解惑区

1.git add .和git add *有什么区别

今天同事问我,git add . 和 git add * 有什么区别,只记得它们都是上传所有文件,但具体区别忘记了,因为自己一直都是用git add . 的,所以记录下,以备以后查阅。

在这里插入图片描述

2.git pull和git fetch哪个好

git pull 接近于 git fetch + git merge

git fetch:只把远程仓库新的变动同步到本地,本地的当前分支不发生改变,后期需要融合远程的相同分支

git pull:更新远程数据并融合

也不是很懂,此处mark下

3.error setting certificate verify locations: CAfile: F:/gitt/Git/mingw64/ssl/certs/ca-bundle.crt

将路径改成的git新的路径即可,原因是:安装多个git或者备份到另一个电脑时,git的盘符发生改变

git config --system http.sslcainfo "D:\git\Git\mingw64\ssl\certs\ca-bundle.crt
公众号:omga
公众号防失联:52bp
全网低价会员:52bp.icu-->杂货铺
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇