Git和Github
程序员文章站
2022-04-17 18:11:26
...
安装
- 默认的shell:windows PowerShell
- 路径 : C:\Program Files\Git
命令:
-
pwd
当前目录路径 cd
-
ls
当前目录所有文件ls -a
ls -l
当前文件 时间 等信息 -
ls -a -l
当前目录 当前时间 -
ls -al file name
指定路径文件名的信息 ..
上级目录mkdir
创建文件夹mkdir js images css html
-
touch
创建文件touch index.html
-
cat
查看文件内容 -
more(Linux)/less(win)
查看文件(部分内容分页 按空格分页enter
下一行) 按下Q
退出 -
rm
删除文件夹 不能删除文件 -
rmdir
删除空文件夹 (不能删除非空文件夹) rm -r css
递归删除文件夹mv index.html images
移动文件mv images/index.html
./剪切文件-
mv images/index.html a.html
重命名 -
cp
表示复制 操作和上面一样 -
scp main.css aaa@qq.com:css
将文件拷贝到远程电脑 -
head -n 5 index.html
查看文件前5行 -
tail -n 5 index.html
查看后5行 -
history
查看历史 -
ls > index.html
重定向 把ls输出的结果,写到index.html
中 -
>>
两个时追加 不存在的文件 创建 echo hello world >> index.html
-
wget
下载: 如wget https://nodejs.org/dist/v4.4.0/node-v4.4.0.tar.gz
-
tar
解压文件tar zhegl.tar.gz
-
curl
请求文件curl http://www.baidu.com
-
whoami
查看当前用户 -
-help
帮助tar -help
-
grep
正则匹配内容 grep s
- 使用正则表达式 匹配某个文件加的 文字
grep s index.html
-
ls | grep s
管道 上一个命令的结果 作为下一个命令的参数 -
vi index.html
编辑文件 命令行模式 - 输入
vi index.html
表示命令行模式 之后输入i
或者a
表示输入模式esc
回到命令行模式 - 命令行模式下 之后输入
shift + :
表示末行模式esc
回到命令行模式 - 一次性创建多个p标签
p{这是一个文本$}*100
使用vi编辑器
- J) 命令模式 dd删除当前行
- K) 命令模式 yy复制当前行
- I) 命令模式 p粘贴当前行
- M) 命令模式 ctrl + f 先前翻页
- n) 命令模式 ctrl + b 先后翻页
SSH
SSH是一种网络协议,用于计算机之间的加密登录
SSH只是一种协议,存在多种实现,即有商业实现,也有开源实现,本文针对
的时OpenSSH,他是*软件,应用非常广泛。
如果要在Windows系统中时用SSH,会用到另一种软件PuTTY,我们后面用到的
Git客户也集成了SSH
格式:ssh aaa@qq.com
user代表真实存在的用户host代表要登录的远程计算机
常见的两种加密技术,分别时对称性加加密和非对称性加密,SSH属于后者。
对称加密算法加密和解密时使用的同一个**
非对称加密算法加密和解密使用的是不同多个**(公钥和私钥)
公钥加密数据,这种情况下只能与其对应的私钥才能解开
使用私钥加密数据,只能使用对应的公钥。除了自己电脑之外都是远程
创建**:$ ssh-****** -t rsa
ssh aaa@qq.com
scp main.css ssh aaa@qq.com:home/studnet 将内容拷贝到main.css
$ ssh-****** -t rsa 创建公钥和私钥
$ git push aaa@qq.com:zhuqinb/Qting.git master
对称加密:
非对称加密:
Git
git创建命令
-
$ git init
创建仓库 -
$ git add index.html
添加文件 -
$ git commit -m
‘初始化仓库’ $ git config --global user.name zhuqi
$ git config --global user.email 'aaa@qq.com'
-
$ git config --list
查看配置信息 -
$ git log
查看当前版本/存盘点/历史 -
$ git status
查看仓库状态 -
$ git add -A
或$git add *
添加文件到暂存区 -
$ git checkout index.html
可以将暂存区的内容还原到工作区 -
$ git commin
缓存区到仓库永久存储 (并且生成一个新版本/存盘点) $ git reset --hard ec177f57d35fbf9c13a3757a708dc9550e0f6c4d
git分支
- 至少要创建一次commit
- $ git branch cart(name) 创建分支
- $ git branch 查看分支
- $ git checkout cart 切换分支
- $ git master 合并分支
- 子分支默认继承父分支的 所有提交历史
- $ git push origin developer:master 把本地的developer分支放到远程master上面 如果 master不写,就是放到相同的分支上面
远程git
-
$ git push aaa@qq.com:/home/student/.git
上传分支到远程服务器 -
$ git pull aaa@qq.com:/home/student/.git
连接远程服务器分支 -
git remote add
变量名 地址 创建别名 -
git remote
显示别名 -
git remote show
显示别名对应的链接 -
git clone
远程仓库地址 = mkdir 目录 + cd 目录下 + git init + git remote add origin 远程仓库地址 - 克隆时: ① git clone aaa@qq.com……git
github 使用git说明
- git clone https://github.com/username/username.github.io
- cd username.github.io
~$echo “Hello World” > index.html - git add –all
~git push -u origin master
github单词
- code
- lssues 讨论
- pull requests 对方发送消息, 可以看的见
- projects
- wiki 功能说明(项目比较庞大,可以写一个说明)
- pulse 图示
- graphs 图标(开发提交图示)
- lnsights
- settings
注意事项:
- 不要创建太多的分支
- 要有一个“稳定分支”,即master分支的稳定性
- 要有一个开发分支(developer) 包装master分支的稳定性
- 所有的功能分支(feature)从developer创建
- 所有功能开发完成后新建发布分支(release)
上一篇: git和GitHub的学习准备