git到github的完整操作流程

git的使用,包括add、commit、打标签、创建以及合并分支、push到远程仓库

菜鸟教程:Git教程

git常用命令

git --version查看git Bash版本号
git diff查看做了哪些修改

init → 修改文件 → add → commit

git的三种状态:modified修改文件 → add到暂存区 → commit造一颗后悔药

  • git config -l : 查看配置
  • git --version : 查看版本号
  • git init初始化词库:在文件夹右键选择Git Bash Here,运行git init
  • git init file2 :创建一个文件夹file2并同时创建仓库
  • git clone xxxxxxx : 将github上的xxxxx clone到本地,文件夹名为此项目的repository名字
  • git clone xxxxxx test3 :将xxxxx clone into 文件夹test3内,文件夹名就是test3
  • git ll -ah:此时可以看到当前目录下一个.git文件夹
  • git status -sb : 查看文件状态。红色??表示该文件还没add过。绿色A表示add过但没commit了
  • git add . : 将所有修改添加至暂存区。然后运行git status -sb查看此时的状态。绿色A表示add过但没commit了
  • git commit -m "描述" :造一颗后悔药
  • 建议使用git commit -v来造后悔药
    git commit -v可进行多行描述,首行为title,次行开始description。
    比如首行“做了一些更新”,次行“详细更新了xxxx和xxxx以及xxxx”
  • 组合技 git add . && git commit -m "描述" :将add和commit组合使用
  • git log --oneline : 查看后悔药的id(commit后面的代码),按↑ ↓键查看,按 Q 退出

    1
    2
    3
    4
    5
    commit f0d95058cd32a332b98967f6c0a701c64a00810a
    Author: xxxxxx <xxxxxxxx@gmail.com>
    Date: Thu Sep 28 22:30:43 2017 +0800
    完成第一章
  • git log -p : 查看具体增删了哪些内容

  • git log --oneline : 在一行简要显示历史节点

  • git log --all --oneline : 可以看到master和所有分支上的历史记录
  • git log --all --graph : 图示全部分支历史记录

  • git checkout 后悔药的id :吃一颗后悔药~~
  • git checkout - : 回退到上一个历史节点

TODO:git checkout 后悔药idgit reset 后悔药id --hard的区别

回退操作:https://blog.csdn.net/young_emily/article/details/78299398
https://www.cnblogs.com/longtengfly/p/8990954.html

廖雪峰:版本回退

打tag

  • git tag -a 标签名 -m "描述" :打tag(如果项目比较大,有上百个commit时,给几个重要的后悔药打上tag方便查找,省去了拷贝后悔药id代码)


  • git log --oneline:

  • git tag -a 标签名 -m "描述" 后悔药的id :给某个历史节点打标签

  • git tag : 列出所有tag
  • git show 标签名git show v1 查看v1的具体详情(记得↑ ↓翻页)
  • git checkout 标签名 :吃一颗后悔药~ 比如git checkout v1(省去了拷贝后悔药id代码)

分支branch用于多人协作

假设在开发V3版时,发些V2版存在一些bug,那么可以在V2版上创建分支用来修复V2的bug,然后与后期的版本合并

  • git branch 分支名 :在master主干上创建分支
  • git checkout 分支名 :进入分支
  • 组合技 git checkout -b 分支名 :创建并进入新建的分支

在3 not rich commit造完后悔药后,创建一个rich的分支并进入git branch rich && git checkout rich

此时就是在rich分支上操作了,修改not rich为rich,然后add → commit

  • git checkout master : 回到master分支
  • git log --all --oneline : 可以看到master和所有分支上的历史记录
  • git log --all --graph : 图示全部分支历史记录

在master分支下,运行

  • git merge xxx :将xxx分支与master合并,合并完之后再次add和commit

上传到远程仓库github


视频教程 : 点我

  • git remote add origin git@github.com:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/git-demo-1.git :将本地仓库上传至远程仓库
  • git pull : 把远程仓库中最新的更改拖下来,然后在此基础上编辑文件,完成后add和commit
  • git push -u origin master :上传到远程仓库

  • clear 或者 Ctrl + L :清屏

将分支上传到github

git checkout 分支名:进入分支
git add . && git commit -m '描述'
git push origin 分支名

修改github远程仓库名称(重命名仓库)

1
2
3
4
5
6
7
8
# 1.在Github页面中,进入要修改的仓库,在页面上方选择“Settings”,即可重命名远程仓库。
# 2.本地删除原来的仓库链接地址
git remote rm origin
# 3.修改为新的仓库地址
git remote add origin git@github.com:your_account_name/new_repo_name.git
git push -u origin master

同步Coding

1
2
3
4
5
6
7
8
# origin 远端
git remote add origin https://github.com/harry0071/test.git
# 添加一个名为 both 的远端
git remote add both https://git.coding.net/harry0071/test.git
git remote set-url --add --push both https://git.coding.net/harry0071/test.git
git remote set-url --add --push both https://github.com/harry0071/test.git

之后在推送的时候科研用git push both实现二者同步更新

修改github上项目的语言类型

在github上,如果未指定语言,它会根据某种语言的代码量来决定是哪种语言的项目
手动修改语言类型:

1
2
3
4
5
6
# 1.首先在根目录创建.gitattributes文件
# 2.在该文件中写上
*.js linguist-language=vue
*.css linguist-language=vue
*.html linguist-language=vue

意思是将.js、css、html当作vue语言来统计

展示build目录下的文件

在package.json中添加"homepage" : "http://harry0071.github.io/仓库名/build"
然后就能打开http://harry0071.github.io/仓库名/build/index.html

fork和pull request

  1. fork别人的代码并clone到本地
  2. 修改后提交到自己的自己的github
  3. 在网页上发起pull request请求

总结

  • git init:初始化本地仓库
  • git add . && git commit -m ‘描述内容’
  • git pull
  • git push
  • 回退方法如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
A、B、C、D代表后悔药id
A --- B --- C --- D
(HEAD)
git reset --hard B
git reset --soft D
第一个操作执行后状态如下
A --- B
(HEAD)
第二个操作后状态如下
A --- B --- C --- D --- B'
(HEAD)
接着 git commit,得到如下状态
A --- B --- C --- D --- B'
然后就可以 git push 了

知乎:警惕 错误的Git版本回退姿势

修改后,觉得不满意,想要回到之前的版本:

1
2
# 撤销更改,回到之前的版本
git checkout . && git clean -xdf

-------------本文结束感谢您的阅读-------------