发表于: 2019-07-23 17:19:26
1 955
今天完成的事情
git关联GitHub
关联git以及GitHub:
- 设置邮箱和用户名
打开Git Bash
(输入命令均在Git Bash中进行,以后不再声明),分别输入下列命令(输入一行命令后需要回车,以后不再声明):
1 | git config --global user.name "student" |
下面这一行设置可以增强输出命令的可读性:
1 | git config --global color.ui auto |
- 用ssh生成公钥,输入:
1 | ssh-keygen -t rsa -C "test@smail.nju.edu.cn" |
回车之后会出现如下所示的输出,直接按回车即可:
1 | Generating public/private rsa key pair. |
这样密钥文件就生成了,默认在用户目录下,如:C:\User\xxx\.ssh\
这个文件夹中。其中的xxx是你的windows用户名。
将公钥添加到github中
(1). 在C:\user\xxx\.ssh\
文件夹中找到id_rsa.pub
这个文件,用文本编辑器(如记事本)打开,复制里面的所有内容。
(2). 登陆github账号,点击头像旁的小三角展开,点击settings
-SSH and GPG keys
-New SSH key
,在Title
中取一个名字,key
中粘贴你刚刚复制的内容。然后点击Add SSH key
即可。测试是否关联成功,输入:
1 | ssh -T git@github.com |
出现以下结果即为成功:
1 | Hi student! You've successfully authenticated, but GitHub does not provide shell access. |
使用git删除本地文件/文件夹以及远程仓库文件/文件夹
1.对需要删除的文件、文件夹进行如下操作:
git rm test.txt (删除文件)
git rm -r test (删除文件夹)
2.提交修改
git commit -m "Delete some files."
3.将修改提交到远程仓库的xxx分支:
git push origin xxx
使用git删除远程文件/文件夹但不影响本地文件/文件夹
git rm -r --cached test.text
git commit -m "描述"
git push origin master
SVN和GitHub的区别
SVN优缺点
优点:
1、 管理方便,逻辑明确,符合一般人思维习惯。
2、 易于管理,集中式服务器更能保证安全性。
3、 代码一致性非常高。
4、 适合开发人数不多的项目开发。
缺点:
1、 服务器压力太大,数据库容量暴增。
2、 如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。
3、 不适合开源开发(开发人数非常非常多,但是Google app engine就是用svn的)。但是一般集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。
Git优缺点
优点:
1、适合分布式开发,强调个体。
2、公共服务器压力和数据量都不会太大。
3、速度快、灵活。
4、任意两个开发者之间可以很容易的解决冲突。
5、离线工作。
缺点:
1、学习周期相对而言比较长。
2、不符合常规思维。
3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
今天遇到的问题
1.在push空文件夹到GitHub中,发现无法push
对策: github内无法push空的文件夹,本身空的传上去也没意义,但是可以通过ignore之类的办法解决上传
今天的收获
1.直到了ssh密钥的作用:git使用https协议,每次pull,push都要输入密码,使用git协议,使用ssh秘钥,可以省去每次输密码
2.学会了使用git上传文件夹以及使用git删除文件和文件夹
明天的计划
1.上午讲完小课堂,并完成课后相关资料上传工作
2.下午开始学习弹性盒子各个指令的作用,复习定位,盒子模型,浮动
3.任务六开始前的准备工作
评论