Git与Github的连接与使用
前戏: Git的安装
windows:
https://www.cnblogs.com/kermitjam/p/9404340.html
mac:
mac是自带git客户端,若没有安装可以通过homebrew git命令来安装。
一 注册Github账户,并创建项目。
使用git 将项目上传到GitHub上首先要有GitHub账号,没有注册的先去注册,地址:https://github.com/login 没有仓库的话,先新创建一个仓库。
创建仓库: 填写新仓库名称,备注信息。点击创建即可完成。
创建完成会显示如下界面。先放置不用管。后面会用到!
二 Git命令操作
本地Git仓库和GitHub仓库之间的传输是通过“SSH”加密传输的,GitHub需要识别是否是你推送,只要GitHub知道了你的公钥,就可以确认只有你自己才能推送,所以需要配置ssh key。
1.初始化git
# 先创建一个文件夹当做仓库 mkdir git_demo cd git_demo # 在git_demo下初始化git git init >>> Initialized empty Git repository in D:/git_demo/.git/
2.创建SSH Key。
在用户主目录(C:\Users\Administrator)下,看看有没有.ssh文件,如果有,再看文件下有没有id_rsa
和id_rsa.pub
这两个文件,如果已经有了,可直接到下一步。如果没有,打开Git Bash,输入命令,创建SSH Key 直接回车就可以了。
ssh-keygen -t rsa -C "githu项目url.git" - 输入保存秘钥的路径 - 输入密码, 可不设置
出现上图,就说创建成功啦,再去用户主目录里找到.ssh
文件夹,里面有id_rsa
和id_rsa.pub
两个文件,这两个就是SSH Key的秘钥对,id_rsa
是私钥,不能泄露,id_rsa.pub
是公钥,可以公开。
3. 将你的ssh 秘钥key值赋值到剪贴板。
# pbcopy < (秘钥存放目录) pbcopy < /Users/tank/.ssh/id_rsa.pub
4.把剪贴板的秘钥key值添加到github的SSH设置中
接下来到GitHub上,打开“Account settings”--“SSH Keys”页面,然后点击“Add SSH Key”,填上Title(随意写),在Key文本框里粘贴 id_rsa.pub
文件里的全部内容。
点“Add Key”,你就应该看到已经添加的Key,可以添加多个Key
5.验证是否成功,在git bash里输入下面的命令
''' ssh -T git@github.com '''
如果初次设置的话,会出现如下界面,输入yes 同意即可
6.下面开始设置username和email,因为github每次commit都会记录他们
''' # 你的GitHub登陆名 git config --global user.name "name" # 你的GitHub注册邮箱 git config --global user.email "1562*****660@126.com" '''
6.准备上传代码
将你的项目代码拉到当前git_master文件夹中。
7.执行命令git status。
''' git status '''
8.更新准备本地仓库代码
这个时候你就会看到所有的改动,然后执行 git add . (有个点哦,这个点表示更改所有的改动), 执行命令 git commit -m "第一次更新"。''' git add . git commit -m "第一次更新" '''
9.查看项目SSH地址
10.开始关联远程仓库
# git remote add origin git@github.com:用户名/项目名.git ''' >>> git remote add origin git@github.com:TankJam/ATM.git ''' # 注意: 若当前add仓库被提交过会报错 >>> fatal: remote origin already exists. # 需要先删除再添加 ''' >>> git remote rm origin >>> git remote add origin git@github.com:TankJam/ATM.git '''
11.上传本地仓库到GitHub中
第一次推送master分支的所有内容命令,此后,每次本地提交后,就可以使用命令git push origin master推送最新修改
''' >>> git push -u origin master '''
12.注意坑点!
创建仓库时因为创建了readme导致的问题
三 Pycharm中GitHub
https://www.cnblogs.com/kermitjam/p/9404047.html