git.exe下载
官方网址下载(较慢)https://gitforwindows.org/
阿里云镜像下载地址:https://npm.taobao.org/mirrors/git-for-windows/v2.22.0.windows.1/

了解Git
Git是一个开源的分布式版本控制系统,功能主要是版本控制和分支管理。
版本控制:自动记录每次文件的改动。
分支管理:多人协作编辑。

使用GitHub
注册Github账号。
注册过程报错Unable to verify your captcha response.是验证图片出不来。 我用的是chrome浏览器,版本也是前不久才升级的。最后换成Microsoft Edge成功注册。

git clone

在GitHub上可自由参与各种开源项目。例如访问
bootstrap项目,主页https://github.com/twbs/bootstrap,点击“Fork”,就在自己的账号下克隆了一个相同的仓库,然后在自己的账号下clone:
git clone git@github.com:michaelliao/bootstrap.git
如果希望官方接受你的修改,你就可以在GitHub上发起一个pull request。
Note:不要用https的链接(即https://github.com/usr/a.git),下载不了 time out。用SSH的链接(git@github.com:usr/a.git)。

连接本地Git仓库与 GitHub
由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以需要设置。

1. 打开git-bash.exe,创建SSH Key。

git 和 github入门,连接本地项目到GitHub - 图1
输入
$ ssh-keygen -t rsa -C “注册github的邮箱”
会给出保存key默认路径,回车即同意默认。
接着出现Enter passphrase (empty for no passphrase):
即让你设置密码。
直接回车就默认没有密码,这样每次提交和下载代码的时候可以不用输入密码。
git 和 github入门,连接本地项目到GitHub - 图2

到此会在用户目录(刚才设置的保存key的路径)里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

打开id_rsa.pub
文件打不开,使用cmd,在该目录下输入:more id_rsa.pub 查看公钥内容。

2. 在github的设置里,点击SSH and GPG keys——点击New SSH key。标题随意,粘贴刚才复制的公钥。

3. 测试本地库与github库是否连接成功。
在cmd输入:
ssh -T git@github.com
会提示:blabla…Are you sure you want to continue connecting (yes/no)?
回答yes。
如果有密码会要求输入密码。接着出现
Warning blabla…
Hi xz23333! You’ve successfully authenticated, but GitHub does not provide shell access.

接着输入
git config —global user.name “你github的名字”
git config —global user.email “你的github邮箱地址”

4. 在github上创建一个仓库 New repository(在头像旁边的加号里)。

5. 在本地创建一个版本库(即文件夹)
输入“git init”,会出现一个隐藏文件夹.git,它就变成了一个Git仓库
git 和 github入门,连接本地项目到GitHub - 图3

本地项目推送到Github

把项目粘贴到此仓库里。右键打开git bash,输入下列命令:
1). git add 文件名 //把项目添加到仓库;
2). git commit -m “注释内容” //填写修改信息;
3). git remote add origin https://github.com/xz23333/test1.git //填写你自己的GitHub项目地址
4). git push -u origin master //这样,本地仓库的项目就被推送到Github上了
git 和 github入门,连接本地项目到GitHub - 图4如果在第3)步中出现
fatal: remote origin already exists.那么输入git remote rm origin。再次执行即可。


更新:push的时候输入账号密码不能上传了,要用token。
image.png

git push using GitHub token

首先在github上创建token:
From your GitHub account, go to Settings => Developer Settings => Personal Access Token => Generate New Token (Give your password) => Fillup the form => click Generate token => Copy the generated Token, it will be something like ghp_sFhFsSHhTzMDreGRLjmks4Tzuzgthdvfsrta
然后 git push:
Once you have a token, you can use it instead of your password when performing git push operations over HTTPS as below:

  1. git push https://<GITHUB_ACCESS_TOKEN>@github.com/<GITHUB_USERNAME>/<REPOSITORY_NAME>.git

Note: Remember to replace , , with your token, username and repository.


本地对代码做了修改,提交更新后的代码到GitHub,进行下列步骤
git add . 更新全部文件
git commit -m “说明”
git push -u origin master

合并本地和远程库

1). git add 文件名 //把项目添加到仓库;
2). git commit -m “注释内容” //填写修改信息;
3). git remote add origin https://github.com/xz23333/test1.git //填写你自己的GitHub项目地址
4). git pull origin master —allow-unrelated-histories
5). git push -u origin master

删除GitHub上的仓库

进入项目,工具栏点Settings,拉到最下方有delete按钮。
git 和 github入门,连接本地项目到GitHub - 图6
git 和 github入门,连接本地项目到GitHub - 图7

删除本地仓库

$ rm -rf .git

修改ssh key的密码

以rsa的密钥为例

  1. ssh-keygen -f id_rsa -p

回车后会提示输入原密码,然后输入新密码两次,如果要改为无密码形式,输入新密码的时候直接回车即可,然后git操作,远程连接服务器的时候都不需要输入密码了。

参考
Git教程 https://www.liaoxuefeng.com/wiki/896043488029600