GitHub小白入门
一、GitHub初识
参考连接:https://zhuanlan.zhihu.com/p/139494507
二、GitHub仓库操作
GitHub网站操作
创建仓库、提交更改、查看更改、修改名称、删除仓库
参考连接:https://zhuanlan.zhihu.com/p/139767171
三、Git安装与使用
1、Git安装:官网下载安装,一路默认
git --version 查看版本
2、Git基础
初次运行Git前的配置
Git配置文件地址
在 Windows 系统中,Git 会查找$HOME目录下(一般情况下是C:\Users\$USER)的.gitconfig文件。
我们需要配置的内容一般是用户信息,即用户名和邮箱。
查看配置命令
git config --list 查看所有配置
git config --list --show-origin 查看所有配置及所在文件
配置用户名、邮箱命令
git config --global user.name "user name" 配置用户名
git config --global user.email "email address" 配置邮箱地址
你的 C:\Users\用户名 目录下,你会找到一个 .gitconfig 文件
强调,如果使用了--global选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有--global选项的命令来配置。
单独查看用户配置命令:
git config user.name
git config user.email
3、git其他命令
进入仓库目录内后操作
git status 查看仓库状态
git init 初始化仓库
git add test.txt 添加文件
git rm --cached 移除缓存
git commit -m "commit content" 将暂存区内容添加到本地仓库中 ,并备注更改的内容
git log 打印git仓库提交日志
git branch 查看分支
git branch a 添加新分支a
git checkout a 切换到分支a
git merge a 先切换到主分支main,再用此命令将a分支合并到main分支
git branch -d a 删除分支a分支
git branch -D a 强制删除a分支
git tag 查看标签
git tag v1 新建v1标签
git tag v2 切换至v2标签
参考连接:https://zhuanlan.zhihu.com/p/140405392
Git标签的使用:https://blog.csdn.net/jdsjlzx/article/details/98654951
四、GitHub下载提交代码
1. SSH 配置
要想本地与远程仓库交互,必须有一个安全机制防止数据泄漏 ,这个安全机制就是 SSH,因此远程交互之前需要进行 SSH 配置。
1.1、生成SSH key
想要生成 SSH KEY 需要先安装 SSH,不过我们之前已经安装的 GitBash 自带 SSH (我的操作系统是 Windows 10)
打开 GitBash ,输入 ssh,如果返回如下界面说明 SSH 已安装,否则得自己安装呀!
紧接着输入 ssh-keygen -t rsa (指定 rsa 算法生成密钥),接着连续三个回
车键(不需要输入密码),然后就会生成两个文件 id_rsa (密钥)和 id_rsa.pub (公钥)。
我划线的地方就是密钥和公钥存储的位置,等会儿我们需要打开文件复制密钥 。
接下来要做的是把 id_rsa.pub 的内容添加到 GitHub 上,这样你本地的 id_rsa 密钥跟 GitHub 上的 id_rsa.pub 公钥进行配对,授权成功才可以提交代码。
打开 GitHub,点击右上角的你的头像,点击设置 settings:
点击左侧的 SSH and GPG keys,点击右上角的 New SSH key:
进入到下面的界面,把刚刚生成的公钥 (id_rsa.pub 文件中的内容)复制到 Key 所在框, Title 不用填,复制好点击下方的 Add SSH key 按钮即可。
提示:id_rsa.pub 可以选择用 Notepad++ 或 Sublime 打开~
添加完返回 SSH 页面就会出现你的本地信息。
1.3 验证绑定
最后我们验证一下本地的 git 与 GitHub 是否绑定成功,在 GitBash 输入 ssh -T git@github.com ,如果返回下面的提示,说明绑定成功✌,不过有时候返回有些慢呀
到此为止,我们的 SSH 配置完成,接下来我们可以与远程仓库交互啦!
2. 通过 Git 下载代码
Download ZIP 仅下载查看代码时使用,不能记录提交历史,不能回滚到历史文件。
需要版本管理时使用git clone
git clone with HTTPS
打开 GitBash 窗口,输入 git clone,后面跟复制的https URL
git clone https://github.com/project/repo.git
git clone with SSH
打开 GitBash 窗口,输入 git clone,后面跟复制的SSH URL
git clone git@github.com:project/repo.git
异同
同:HTTPs 与 SSH 下的 git 都可以直接进行 git clone 操作
异:
HTTPs git clone 到本地,进行了一些文件的修改,当再次提交到 GitHub远程服务器的时候,都会进行账号与密码的输入
SSH git clone 到本地之后,由于已有 SSH Keys 授权,就不需要用户名和密码进行授权了。
3. 通过 Git 提交代码
3.1 两个命令
上一节我们讲了一些基本的 git 命令,不过都只涉及本地,现在我们想本地与远程仓库交互,就需要学习两个新命令:
git push:翻译为推,当你的代码更新,需要把本地的推到远程仓库
git pull:翻译为拉,当远程仓库有更新,你需要把远程的拉到本地进行合并
可以看出这两个命令都是为了保证本地与远程的同步。
我们需要区分 git clone 和 git pull,虽然它们都是从远程仓库到本地的更新,但前者在本地无仓库时使用,后者是本地已有仓库时使用。
使用举例:
git push origin main # 把本地代码推到远程 main分支
git pull origin main # 把远程最新的代码更新到本地
一般我们在 push 之前都会先 pull ,这样不容易冲突。
3.2 提交代码
通过 git 提交代码的前提是已有仓库,然后把仓库 clone 到本地,你修改后再pull。
例如:
github网站账号内,临时新建仓库演示一下提交功能。
建完仓库后,我们把仓库 clone 到本地,为了不输入账号密码,我这里用 SSH 的方法 clone。
接下来我就要在更新本地仓库, 我只是新加一个 python 文件,你也可以修改一个已有文件。
所有的改动都需要通过 git add和git commit 提交到本地的仓库。
以下命令在 Git Bash中 输入:
如果要 add 目录下的所有文件,用
git add --all
提交
git commit -m “ first commit”
然后输入 git log 查看提交历史,可以看到一共有两次 commit,第一次是在 GitHub 上新建仓库,第二次是刚刚在本地新提交文件。
到现在我们才完成本地更新的工作,接下来要把本地仓库 push 到远程仓库
在 Git Bash 输入 git push origin main 即可
以上通过 SSH 完成 git clone 和 git pull 等操作,完成本地仓库与远程仓库的交互,并记录每次的提交历史。
参考连接:https://zhuanlan.zhihu.com/p/147656713
4、删除github仓库里面的文件
$ git pull origin master # 将远程仓库里面的项目拉下来
$ dir # 查看有哪些文件夹
$ git rm -r --cached 169.\ Majority\ Element # 删除169.\ Majority\ Element文件夹
$ git commit -m '删除了169.\ Majority\ Element' # 提交,添加操作说明
$ git push -u origin main # 将本次更改更新到github项目上去
$ git pull origin main #将远程仓库里面的项目拉下来
5、GitHub网站上创建新仓库后
…or create a new repository on the command line
echo "# ExpressLogin" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin https://github.com/itsanobody/ExpressLogin.git git push -u origin main
…or push an existing repository from the command line
git remote add origin https://github.com/itsanobody/ExpressLogin.git git branch -M main git push -u origin main
posted on 2021-09-11 23:24 PerfectData 阅读(312) 评论(0) 编辑 收藏 举报