初步学会了一些简单的git操作。接下来对这一次学习进行一次总结,其中也包括了在这次学习中踩中的坑,希望对你们有所帮助。
第一步:下载
这个东西可以直接到官网下载或者到阿里云去下载,这里不多赘述。
附:阿里云路径CNPM Binaries Mirror (npmmirror.com)
接下来的按照默认傻瓜式安装就好。
第二步:创建一个仓库
创建一个空目录作为给git初始化目录
这里创建了一个text_1的目录作为给git仓库的初始目录
打开git(这里使用的是git_bash)
添加用户
git config --global user.name 用户名 git config --global user.email 邮箱名
添加成功后会在个人用户目录下生成一个.gitconfig的文件,里面就是刚才输入的用户名和邮箱名
cd进去刚才创建的目录,初始化git仓库
然后在text_1仓库下会生成一个.git的隐藏文件,在“查看”那里打开选项选项就可以看见。
或者
有了这个文件说明你已经初始化成功了。在.git目录的文件不要乱改。
第三步:添加到暂存区
这里可以自己将要上传的文件拖到这个文件夹里,也可以使用命令创建一个想要上传的文件。
这里使用touch命令创建一个文件
上传文件到暂存区
git add 文件名 #上传文件到暂存区 git status #查看仓库状态 cat .c #查看文件内容 因为这是一个空文件,所以里面什么都没有用
这里复制了一个文件到text_1里面
再次用cat查看
查看日志
这里不一一赘述,有兴趣自己去查一下各条表示什么意思
第四步:连接远程仓库
这里再github上创建了一个test的仓库,待会用此仓库演示
生产ssh密钥
ssh-keygen -t rsa -C "your_email@example.com"
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名,一般我们默认,让存储到默认路径以及默认文件名
然后在个人用户目录下的.ssh目录里会生成私钥和公钥
id_rsa是私匙,id_rsa.pub是公匙,id_rsa不能告诉任何人,只有公钥可以,ssh采用的是非对称加密。
接着在github上添加你的公钥
在github上创建一个新的库
一定要把add a readme file 勾上
创建好后大概就是这样的,什么都没有,就一个readme文件
github将本地仓库关联到远程仓库:git remote add origin
我们本地有一个仓库,我们想把它推送到远程上去,很简单,我们只需要使用git remote add origin命令就可以了,ongin是github上的仓库名称,意思是远程仓库的意思。
首先选择仓库的code找到github生成的远程仓库链接
然后关联
使用git push 将暂存区的文件推到远程仓库
push:将本地仓库与远程仓库合并
-u:将本地仓库分支与远程仓库分支一起合并,就是说将master的分支也提交上去,这样你就可以在远程仓库上看到你在本地仓库的master中创建了多少分支,不加这个参数只将当前的master与远程的合并,没有分支的历史记录,也不能切换分支
origin:远程仓库的意思,如果这个仓库是远程的那么必须使用这个选项
master:提交本地matser分支仓库
ps:在这一步可能会遇到这种问题
$ git clone https://github.com/HalfStackDeveloper/FloatBall.git -b master Cloning into 'FloatBall'... fatal: unable to access 'https://github.com/HalfStackDeveloper/FloatBall.git/': SSL certificate problem: unable to get local issuer certificate
这是只要在git输入这个就行
git config --global http.sslverify false
这个不建议在工作环境上用,会有安全隐患,具体的解决方法我还找不到。后面可能会补充
然后你的github上会有提交记录
这个时候我们就可以看到github上多了一条master的分支
这就是我门刚才提交上去的
打开master,可以看见刚才提交的.c文件和记录的备注
从github上来取指定分支,切换远程分支:git clone
当我们远程有仓库时,想要关联到本地只需要使用git clone就可以了
新建一个空目录,不要git init
使用git clone会自动帮我们初始化
这里我们用一个事先准备好的文件目录text_1
在github上有已经关联好的库test
鉴于刚刚的,我们上传的代码在远程仓库中有一个默认的main和master,由于我们最初上传的分支是master,所以github给我们创建了一个新的分支叫master,并没有关联到mian中,我们拉取时,默认拉取的是main分支
所以我们可以使用git clone -b分支名 仓库地址来指定分支
可以看到在text_1中多了一个test的目录