git基本命令
准备工作
打开git bash或cmd终端。cd到项目文件夹根目录下。 cd \xxx\testgit
- git config --global user.email "你的邮箱"
- git config --global user.name "你的名字"
- git init 。初始化本地仓库git,会看到项目文件夹下生成 .git隐藏文件夹,这个文件夹会记录以后的更改和提交。
常用命令
- git add 文件名 。跟踪一个文件 。 git add 1.py 。
- git add . 。跟踪当前文件夹下所有文件。
- git commit -m "开发新功能"
- git checkout master
- git checkout newfeature
- git merge 副分支 。合并副分支内容到当前分支。
分支
添加新分支
- git branch new
- git rebase 提交历史
- (*newfeature) git add . git commit -m “”
- (*newfeature) git checkout master
- (*master) git merge newfeature 这样就会把新分支的修改合并到主分支之下
撤回
(用到再百度)
撤回add 文件
撤回commit 记录
还原
git log 查看提交记录
git基本命令-远程
git基本命令
引题
代码在本地提交,可以实现版本回退和前进。但是如果本地磁盘损坏,代码丢失,所以我们要把代码往另一台电脑(远程服务器)存一份。好像网盘。实现代码在不同客户端(电脑、笔记本、手机)拷贝下载代码,提交代码到远程服务器。
ssh 非对称加密
ssh: 主要用途 远程连接另一台计算机。
对称加密:明文’abc’,定义加密规则 a-z分别对应数字1-26 , 密文’1%2%3’
非对称加密:参考文章
A端和B端通讯。A端通过数学方式(RSA加密 生成容易反向破解难)生成一对儿秘钥。A把公钥告诉B。 B想给A发消息,先把消息用A给的公钥加密,传输给A,如果中间被黑客截取 由于黑客没有A的私钥无法解密,最终A收到的信息用自己的私钥解密看到信息。
远程仓库平台
- github 最为流行,主要线上。
- gitlab 较为流行,UI漂亮但消耗更多的资源,不少公司局域网内搭建。
- gitee 阿里云code, 国内的代码仓库,基于gitlab或相似技术。
github使用
- 注册登录。网站没有被墙可以直接登录。
可能出现的问题:注册时报验证错误请检查防火墙或代理,用手机网络注册或科学上网。 - 左上角的搜索仓库。进入一个工程项目中。
watch 关注,当代码改变,会有邮箱提醒。
star 收藏。收藏到我的收藏夹。
folk 拷贝别人的代码仓库 到自己的仓库。方便自己下载这份代码或为这个项目做贡献。
除项目外 约定俗称的文件
- README.md 写项目介绍、安装运行步骤。这个文件将会在github项目首页渲染出来。说明书。
- LICENSE 版权声明 gpl,规定代码是否免费,是否可以修改商用。具体百度。
- .ignore 忽略一些不想跟踪不想add的文件。
准备:配置秘钥对
初次使用代码版本控制平台。由于代码重要,平台为了防止账号名密码泄露后代码被黑客窃取。你的客户端自己的电脑生成一对秘钥,然后公钥交给平台。这样从平台克隆代码时,不是自己的电脑无法克隆。
- ssh-keygen命令 一路回车,生成秘钥对。
在 用户/用户名/.ssh文件下看到生成的 id_rsa私钥和id_rsa.pub公钥。私钥自己谨慎保存,公钥给你想要沟通的远程平台。
命令
github上随意找一个项目,复制下载里的 ssh连接
- git clone ssh 连接(形如git@github.com/sss/sss.git) 远程仓库复制到自己的本地电脑上。
刚开始会询问是否接受存储公钥,输入yes, 开始clone。
github新建一个项目,克隆到本地。本地进行修改,提交。
-
git push origin 把本地提交推送到远程服务器仓库。这样当更换电脑或是本地仓库被破坏时,可以快速从远程仓库克隆回复。origin指远程服务器。
-
git pull 从远程仓库更新新内容到本地。与git clone相比,clone是本地什么都没有,从远程复制仓库。
pull是本地已经有仓库,另外的开发者提交过远程仓库,远程仓库代码比自己本地仓库代码新,所以本地提交前要先从远程更新再提交。