暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

git与github日常使用

一叶扁舟 2021-04-19
609

一、概述

1.1、git

Git 是一个开源的分布式 版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理

1.2、github

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。

二、git

2.1、git各个区域及工作常用命令

image.png

2.2、git常用命令

2.2.1、创建

git clone https://github.com/xxx.git # 克隆远程仓库 git init # 初始化本地 git 仓库(新建仓库) rm -rf .git # 已经初始化了,重新初始化,需要删掉.git文件

2.2.2、本地修改

git status # 查看当前版本状态(是否修改) git diff # 显示所有未添加至 index 的变更文件及内容详情 git diff HEAD # 查看未commit的改动 git add <path> # 将该文件添加到index git commit -m '描述' # 将index提交到仓库区 git commit --amend -m '描述' # 合并上一次提交(用于反复修改) git commit -am '描述' # 将 add 和 commit 合为一步

2.2.3、查看提交历史

git log # 显示提交记录 git log --pretty=oneline # 查看当前及之前版本号 git reflog # 查看所有版本号 git show <commit> # 显示某个提交的详细内容 git blame <file> # 在每一行显示 commit 号,提交者,最早提交日期

2.2.4、分支与标签

git branch # 显示本地分支 git checkout <branch> # 切换分支 git branch <new-branch> # 新建分支 git checkout -b 分支名 # 创建新分支,并切换到该分支 git branch -d <branch> # 删除本地分支 git tag <tag-name> # 给当前分支打标签 git merge <branch> # 合并分支到当前分支,存在两个 git rebase <branch> # 合并分支到当前分支,存在一个

2.2.5、撤销

暂存区退到工作区

# 已经add到暂存区,修改了工作位内容后,将工作区内容恢复为暂存区的内容 git checkout -- fileName # 将暂存区数据退到工作区(如果工作区和暂存区数据不同,则以工作区为准) git reset HEAD git reset HEAD fileName

切换仓库区版本

# 删掉上一个提交的版本(工作区会跟随改变) git reset --hard HEAD^ # 查看版本切换日志(方便恢复) git reflog # 恢复到指定版本(工作区会跟随改变) git reset --hard 210775453

2.2.6、忽略文件

配置隐藏文件.gitignore

1、原有的文件,修改之后,提交依旧会改变

2、新加文件,提交不会改变

image.png

2.2.7、远程更新发布

git fetch <remote> # 获取远程分支,但不更新本地分支,而是生成新的分支 git pull <remote> <branch> # 获取远程分支,并更新本地分支 git push <remote> <branch> # 推送本地更新到远程分支 git push --tags # 推送本地标签
  • 区分clone、pull、fetch
    • clone: 用于本地没建仓库,将远程仓库文件拉取到本地
    • pull:用于本地有仓库,将远程仓库文件拉取到本地,并更新本地分支
    • fetch:用于本地有仓库,将远程仓库文件拉取到本地,创建新的分支

常用 Git 命令清单-【阮一峰】

三、git与github实战

3.2、将本地项目push到github

3.2.1、配置远程仓库

创建远程仓库

image.png

配置ssh秘钥

  • 下载git

  • 生成秘钥

    ssh-keygen -t rsa -C "github邮箱" # 过程中输入密码,最后会产生秘钥并输出秘钥所在目录 # Enter file in which to save the key (/var/root/.ssh/id_rsa) cat /var/root/.ssh/id_rsa.pub # 查看秘钥复制到github
  • 配置github上的秘钥

    image.png

  • 查看是否配置成功

    ssh -T git@github.com # You've successfully authenticated

3.2.2、本地文件上传到github

  • 配置本机信息

    git config --global user.name "提交者" git config --global user.email "提交者邮箱"
  • 将文件上传到github

    # 初始化目录(把该目录变为本地的一个git仓库) git init # 提交到暂存区 git add . # 提交到本地仓库 git commit -m "初始化提交" # 本地与远程建立连接 git remote add origin git@xxxxx.git # 上传到远程仓库 git pull --rebase origin master # 把远程仓库的内容(比如README.md)拉到本地 git push -u origin master # 把本地文件统一上传到远程仓库

3.2、将github项目clone到本地

git clone https://github.com/xxx.git # 克隆远程仓库
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论