GitHub使用 (不定期更新)

2018-05-05  本文已影响0人  苦瓜_6

版本控制

Git 优势 (Git 诞生自2005, Linux 开源社区):

工具安装

windows 下载地址
Mac下载地址

常用命令

使用前的准备

git config --global user.name "xxx"
git config --global user.email "xxx"

-- global 表示一次设置好以后所有仓库都可以用,不用再次设置

git config user.name
git config user.email

常用操作

将目录变成仓库

git init

clone项目

将本地的更新推送到远程仓库

1.把文件添加到暂存区
git add .
说明:add 后面这个点 代表添加所有更新到暂存区。如果只想添加某个文件到暂存区,可以用 git add + 文件名 ,比如 git add a.md 表示只添加 a.md 这个文件;
如果只想添加本地仓库下的某个文件夹里的的所有文件,可以用git add 文件夹名/. ,比如 git add demo10/. 表示添加本地仓库下 demo10 这个文件夹下的所有文件到暂存区

2. 提交到本地库
git commit -am "add file"
说明:这个 add file 是对是本次提交的说明,根据实际情况修改 。
如果提交消息包含大量字符串,提交参数不用加 m ;此时会进入 vim 界面(按下 i 可以进入编辑状态),进行编辑,编辑完成后按下esc 进入命令状态,输入:wq (表示保存并退出)就好了。

3.将当前本地库的改动推送到远程库(origin)的master分支
git push origin master

查看状态

git status 可以查看当前状态

删除 某个文件夹

git rm -r --cached .idea    //  .idea是要删除的文件夹名, --cached不会把本地的.idea删除
git commit -m 'delete .idea dir'
git push -u origin master
提交过程中的异常/特殊情况
  1. 撤销commit (已经add 和 commit)
    git reset --hard origin/master
    可以通过git log 查看是否成功(这个会把上次提交之后本地的更新也抹掉)

  2. 忽略某个文件夹
    在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件。
    ignoring files

将远程仓库的变动更新合并到本地仓库

git pull

本地创建一个 git 项目推送到远程空仓库

1.、创建一个本地文件夹并将空文件夹初始化成一个仓库
git init
2、在GitHub上新建一个空仓库,只勾选 Public, 不选择“Initialize this repository with a README”
3、把远程库的地址添加个标签叫origin
git remote add origin git@github.com:xxx
xxx 是新建的仓库的SSH地址
4、最后就是正常的 git add ,git commit,git push 了
拓展:

分支操作

git checkout master
git merge dev

使用 gh-pages 在同一个 repository中预览多个demo

  1. 本地创建 gh-pages 分支
    git branch gh-pages
  2. 将本地gh-pages 推送到远程
    git push origin gh-pages
  3. 将master 上的内容 合并到 gh-pages
    先切换到分支:
    git checkout gh-pages
    合并:
    git merge master
  4. 在GitHub上设置 GitHub pages
    每个demo的预览地址为:
    GitHub pages + 文件夹名 +index.html

比如,我的某个仓库的GitHub pages 地址为: https://arya1957.github.io/jQuery-demos/
那么我这个仓库下 demo1 de 预览地址为
https://arya1957.github.io/jQuery-demos/demo1/index.html

Git在本地新建分支后,必须要做远程分支关联。关联目的是如果在本地分支下进行git pull 和 git push操作时 ,不需要指定在命令行指定远程的分支。
git push --set-upstream origin gh-pages

需要注意的是:
每次要先push 到master ,然后切换到 gh-pages, 再merge,最后再执行 git push 命令

不使用 gh-pages 在同一个 repository中预览多个demo

之前都把问题搞复杂啦~

上一篇 下一篇

猜你喜欢

热点阅读