git(一) 命令行操作
参考:Git远程操作详解
git = GNU it 是一个版本控制系统。
github和简书有点像,这里放的是文章,github放的是代码。
github的精髓就是开源,开放源代码使得所有人可以方便的学习编程,可以使得开放的软件被众人浏览从而发现bug,而不是像闭源软件那样藏得严严实实生怕别人偷走了劳动成功。
开源闭源各有优缺点这里就不开展撕逼大战了。
github账号注册就不写了,这里聊聊github的使用。
前提:需要有一个github账号,并且新建一个仓库。
案例:用git进行版本控制。
简单的说就是本地建立一个目录,然后通过一些命令批量备份到云端
(远程)。
步骤一:
在github上新建一个仓库,使用git clone 仓库地址
下载到本地
1 |
|
git config -l
查看配置信息
步骤二:
git设置一下该仓库的用户的信息,并初始化
1 |
|
步骤三
添加远程git目录,将远程的和本地的目录进行关联。
关联不需要验证,但是推送到远程目录时,需要验证。
3.1
将本地和远程关联的格式:
是用git remote add 主机名 网址来添加的。
a是远程的地址,b是本地的地址。
#git remote add origin https://github.com/Whale3070/test
3.2 发送到远程目录
新建一个文件,test.c。
1 |
|
于是本地的更改会发送到https://github.com/Whale3070/ctfcoding
这个地址下。
错误:
提交了空目录
解决方式:Git常见错误与操作
错误二:fatal: refusing to merge unrelated histories
当 远程 ‐‐‐>本地 时候,报错
运行git pull origin master ‐‐allow‐unrelated‐histories
因为git版本原因。
错误三:
git push origin master ==》命令x
本来是本地status A ‐‐‐> 远程status A
然后,我们更改本地status A ,为本地status A1
将本地status A1 发送到远程。
但是
本地status A ‐‐‐> 远程status B ,因为远程被更改
于是它们状态不同,要先同步一下,才能将本地发送出去。
远程status B ‐‐‐‐> 本地status B 同步完成
再运行命令x 即可。
1. git config ‐‐list 查看已经设置的参数
git config 查看可用的选项
一般要设置用户名,邮箱,远程origin地址等
2. 远程推送无需用户名密码,使用密钥认证。
ssh ‐T git@github.com
错误:
1 |
|
解决:
1 |
|