- github 是一个代码托管平台,也是一个开源项目平台,互联网项目朋友圈
- 点击 github 页面上的 new 或者 create repository,跳转到新建仓库页面
- 输入仓库名 ‘你的用户名.github.io’,简单输入一些描述,选择public,初始化的时候选择 add README file,然后创建
- 使用 add file 下的 create new file 创建一个 index.html,里面随便写点内容,输入留言并提交
- 提交成功后浏览器访问 '你的用户名.github.io’就会看到你刚才新建的html了
- 其实每一个GitHub 的仓库都是一个服务器,默认 你的用户名.github.io 仓库下main分支(房间),可以访问,地址是 你的用户.github.io。当访问服务器下的内容是,默认打开的是根目录的index.html,没有的话打开的是 README.MD。可以使用其他路径访问其他的内容 比如: 你的用户名.github.io/xxx.html
- 其他的仓库需要额外的 gh-pages 分支才能访问
- 前提是网上已经有一个仓库,并且仓库有内容。然后我们克隆这个仓库到本地,做开发,然后将开发后的上传到网上。
- 想要克隆 github 仓库到本地的话,需要安装 git 软件 或者 git 客户端(一般不选择) ,如果安装了 gitbash 命令的话,给i他软件默认就安装到了你的电脑上(全局安装哪里都能用),可以使用命令 git --verion 命令查看 git 软件版本号
- 点击网页上的仓库的code按钮,选择 Https 方式(之后选择ssl),复制链接地址
- 在电脑上选择一个存储该项目的位置,打开命令工具、使用 git clone 复制的地的命令,克隆项目到该目录(其实克隆的只是仓库内的 main 分支的内容)
- 进入到仓库的 main 分支文件夹,打开命令行
- 执行 git add .命令。该命令的作用是将所有的修改提交到远端缓存下来(让远端记录你的所有修改,并不是直接上传)。 . 的意思是所有修改,可以换成具体的文件名 比如 index.html 就是将 index.html 的修改让远端缓存
- 执行 git commit -m'更新的版本留言'。该命令的作用是将缓存的修改/更新,制作版本,并提交版本留言、
- 如果是第一次使用 git 软件,和网上的github关联时,会失败,提示请告诉我你是谁?
- git fonfit --global user.email “你的邮箱地址”
- git config --global user.name “你的账号名”
- 再次执行 commit 那句话就会成功
- 如果是第一次使用 git 软件,和网上的github关联时,会失败,提示请告诉我你是谁?
- 执行 git push命令。该命令的作用是,将做好的版本,上传到网上
- 弹出窗口 点击 Sigin in with your browser
- 输入用户名
- 输入用户密码
- 网上新建仓库,不添加任何内容
- 在本地新建文件夹和网上的存在的仓库重名(组好重名)
- 在新建的文件夹中打开命令工具,执行 git init 命令,作用是将文件夹制作成 git 空仓库。会生成一个隐藏的 .git 文件夹。以及创建一个分支叫 master(原本网上的分支是 main)
- 执行git branch -M main将当前分支重命名成 main
- 更新下文件里面的内容
- 将更新的内容上传到远端的仓库 先执行 git add .
- 然后执行 git commit -m'留言'
- 最后执行 git push的话会失败,原因是远端和本地并没有关联
- 执行 git remote add origin git@github.com:WangLi-sunny/test.git(github官网有) 给本地添加一个远端的地址名字叫 origin 假如链接写错 git remote rm origin 移除重新执行
- 执行 git push -u origin main 提交到远端(origin) 没有main的话会新建
- 仓库不能嵌套
- 命令行不能在仓库外执行
- 一直出现 open ssl 执行 git config --blobal http.sslVerify false
- 因为每次下载使用的都是 HTTPS 方式,所以每次上传都需要输入用户名密码,很麻烦。这种情况可以使用 ssh 方式处理。 ssh是使用系统的密钥和 github网站关联
- 关联方法
- 在电脑上任意位置打开命令行工具 使用 cd ~跳转到用户目录(存储的系统配置)
- 使用 ssh-keygen命令生成系统密钥(一直回车,知道看到一个密码图位置),生成在电脑的默认位置
- 执行 cd .ssh/进入到 .ssh文件夹 执行 ls命令就能看到生成的公钥和私钥 id_rsa id_rsa.pub
- 执行 cat id_resa.pub查看公钥的文本内容 复制
- 打开 github 网站的设置,找到 SSH AND GPG keys,点击new ssh key,新建一个ssh key,起名字,将复制的公钥粘贴,保存
需要创建一个新的仓库,添加上内容,还需要添加合作的人员(打开仓库的设置,找到 Manage access 添加合作人员)。根据多个用户修改的内容不同分两种情况
- 修改或更新的内容和同事 a 的关系
- 同事 a 克隆里项目到本地,一顿操作,更新了 项目,并上传了
- 同事 b 也克隆了项目到本地(克隆的时间在 同事 a 更新上传前),一顿操作,修改的不同文件
- 同事 b 正常操作,然后上传,但是上传会失败,提示更新被拒绝,远端存在本地不存在的工作(版本),你在更新之前要整合远端的工作(版本),推荐使用 git pull 命令
- 执行 git pull命令拉去远端存在的优于本地的更新,会弹出一个版本留言提示(因为两个版本:同事a提交的和自己未提交的,自动合并(两个版本没有冲突)成了一个版本,让你提交自动合并的版本留言,一般选择默认留言即可,直接使用shift+z+z保存留言即可
- 执行git push就可以提交过呢更新了。因为所有的修改都缓存了,所有的版本都做好了
- 因此来说多个人维护同一个仓库的同一个分支,需要不断的拉去远端的更新(git pull)
- 修改或更新的内容和同事 a 的有关系(修改的同一个文件)
- 同事 a 克隆项目到本地,一顿操作,更新了项目,并上传了
- 同事 b 也克隆了项目到本地(克隆的时间在 同事 a 更新上传之前),一顿操作 修改的和 a是用一个文件
- 同事 b 正常操作,然后上传,但是上传会失败,提示更新被拒绝,远端存在本地不存在的工作(版本),你在更新之前要整合远端的工作(版本),推荐使用 git pull命令
- 执行 git pull 命令拉去远端存在的优先于本地的更新,拉去完毕后会提示自动合并失败,让你收东处理冲突,燃火提交
- 当你手动解决冲的时候,肯定修改了对应内容,所以此次修改远端没有记录,需要使用 git 三步上传
- 一个仓库可以有多个分支,默认创建好的仓库有一个默认的 main 分支,分支是仓库用来存储项目的
- 创建方法:
- 创建新分支 git branch 分支名,注意创建新的分支之前,,需要保证自己有的分支和远端的版本一致,创建好之后可以使用 git branch查看本地的所有分支 带 * 号和颜色的说明当前处于该分支。新创建好的分支,创建的时候里面的内容和 当前所在分支 内容一样,可以使用 git checkout 分支名 切换到对应的分支。当你想要将分支推送到远端,第一次推送的是由于远端并不存在新的分支 需要使用 git push --set-upstream origin 分支名向远端提交
- git checkout -b 分支名 新建分支并切换过去
- 当你创建完分支后,想直接上传到远端,直接使用 git push 即可,因为新的分支内容和已存在的分支内容一直,版本早就做好了。不需要 add 等
- 当其他的分支有优先于mian分支的版本的时候,网页端就会提示 pull request等。就会提示你是否需要合并其他分支的更新。在命令行中进入到 main 分支中,执行 git merge 分支名合并其他分支上的更新 这时候github main中并没有其他分支的更新 需要 git push上传
- 当主分支有优先于其他分支的版本的时候,我们可以在其他分支执行 git pull origin main,拉取主分支上的更新
- 当你仓库内有一个 gh-pages 分支,那么该分支内的所有内容,别部署到了 github 的免费服务器上。可以使用 github用户名.github.io/仓库名访问
- git init 初始化文件夹为一个 git 空仓库(在文件夹中创建了一个隐藏的文件夹 ./git)
- git clone 地址 克隆仓库到本地。(克隆的都是main分支)
- git config … git的配置命令
- git fonfit --global user.email "你的邮箱地址"设置全局github邮箱
- git config --global user.name "你的账号名"设置全局github用户名
- git config --blobal http.sslVerify false忽略ssl认证
- git config --list 查看git配置
- git add .或者修改的文件 将对应的仓库的修改提交到git暂存区
- git commit -m’留言’ 将暂存区的修改制作成版本并添加版本留言
- git push 将当前分支的版本提交到远端
- git push [remote] [branch]远端不存在的分支时,可以使用这种方式提交
- git push [remote] --force --force强制提交(当本的的版本低于远端时候,默认不让提交,可以用这个强制提交)
- git remote …
- git remote add [shortname] [url]给本地仓库添加一个远端的地址,注意:添加一次不可修改,除非移除重新添加
- git remote remove [shortname] 删除添加远端的地址
- git branch 分支相关操作
-git branch [分支名] 新建分支- git branch查看本地分支
- git branch - r查看远端分支
- git brach -a查看所有分支
- git checkout 切换分支
- git checkout 分支名 切换到对应的分支
- git checkout -b 分支名 新建并切换
- git status查看仓库的状态
- git log命令查看当前分支的所有版本 --online 用一行展示一个版本信息
- git reflog命令查看当前分支的所有版本 和 git log的区别是 该命令可以查看所有的信息 包括删除的
- git pull 拉取更新
- 在本地的分支拉取远端对应的分支更新 - `git pull origin main` 在当前分支拉去(mian)分支上的更新
- git merge [分支名]合并更新 主分支合并其他分支的更新



