GitHub创建git仓库和提交
GitHub是一个面向开源及私有软件项目的托管平台。之前虽然已经使用过很多次,但是没有做相关的总结。
现在把在github创建创建代码仓库的过程记录在此,希望对大家有所帮助。
1. 安装Git工具
Git工具:Git
安装过程很简单,可以自行更改安装路径
2. 创建GitHub账号
GitHub:GitHub
根据一般网站注册账号即可,我之前注册过了,这里就不截图介绍了
3. 创建代码仓库
3.1 注册GitHub完成之后,点击右上角的+号按钮,使用New repository选项创建
repository.png3.2 设置Repository
设置仓库name,设置描述(optional),Public/Private可访问性,之后点击Create repository创建仓库。等待创建完成之后,会在仓库列表出现一个空的仓库项目。
repository_setting.png
4. 配置ssh key
4.1 如果之前没有使用过git工具,需要在正式提交代码之前创建一个ssh key用于安全验证。
根据命令执行即可:
配置用户名
git config --global user.name "usernameXXX"
配置邮箱
git config --global user.email "usernameXXX@gmail.com"
配置信息确认
git config --list
ssh key生成
ssh-keygen -t rsa -C "xusernameXXX@gmail.com" // -t是配置key类型,不添加情况下默认rsa -C是添加描述信息,没有要求
注意事项:
- windows默认情况下生成key目录为C:\Users\username.ssh
- 默认情况私钥名称id_rsa,公钥id_rsa.pub。私钥自己保留,公钥需要配置到git服务器,用于代码提交验证
- ssh-keygen命令执行之后可以修改key生成的文件名,Enter继续执行会提示输入密码,这里的密码是提交的密码,不是GitHub密码,请注意。当然使用GitHub密码也没有任何问题,也可以不设置。
4.2 拷贝公钥
key生成之后,使用notepad++等编辑器打开公钥id_rsa.pub文件,拷贝所有字符。
4.3 配置GitHub ssh
点击GitHub右上角个人账号图标,打开Settings->SSH and GPS keys路径。
选择New SSH key把刚才的公钥配置到服务器。
ssh_setting.png
5. 配置正确性验证
上述配置完成之后使用命令验证是否配置成功
ssh -T git@github.com
如果配置正确,会显示验证成功的消息。否则会提示失败。
我第一次使用GitHub时候显示了如下错误提示。
ssh.png
大概意思就是私钥文件不应该允许其他访问。所以我们需要把文件权设置为仅当前用户可以访问。
如果是Linux操作系统,直接使用chmod 600 id_rsa修改文件权限即可。
如果是Windows操作系统,需要用如下方式修改权限:
- 打开id_rsa文件属性->安全->高级安全设置页面
- 选择禁用继承,删除权限继承
-
选择添加选择用户,输入当前用户名称,检查名称,仅为当前用户添加所有权限即可
security.png
add.png
再次执行ssh -T git@github.com命令,显示如下提示即可
到此为止,ssh配置已经完成。
6. 本地git初始化
6.1 使用Android studio创建一个项目
6.2 打开该项目路径,在项目根目录下初始化git仓库
git init //把这个目录初始化为Git管理仓库
6.3 把本地git和远程GitHub仓库绑定
git remote add origin git@github.com:takeAChestnut/AppProject.git
git@github.com:takeAChestnut/AppProject.git是远程git仓库地址,大家在上面创建的repository项目页面复制即可。
注意要切换为use SSH。
6.4 更新本地git代码
第一次配置仓库,最好按照这个流程执行一遍
git pull origin master
7. 代码提交准备(不需要可以跳过)
经过前面一系列的准备工作之后,我们终于到了代码提交的环节。不过再次之前,
-
我们先打开项目的.gitignore把我们不需要提交的文件添加到排除列表。
ignore.png -
执行命令禁用CRLF自动转换。
git config --global core.autocrlf false
我们都知道Windows结束符是\r\n,Linux结束符是\n,git默认启用自动转换情况下,提交时候会将文件的\n转换成\r\n,一般情况下没有影响,使用vim工具或在Gerrit查看会显示^M的字符(这个是Windows结束符标志)。
-
设置Android Studio默认文件结束符。
打开Android Studio Settings->Editor->Code Style->Line separator修改为Unix and macOS
CRLF.png
8. 代码提交
上面的步骤不是必要的流程,如果认为不需要可以跳过。
8.1 使用Android Studio提交
项目git初始化之后,Android Studio会自动添加git仓库管理,使用Git工具栏就可以执行git pull, git commit操作。
我们在提交之前避免代码冲突,先用箭头按钮同步代码,之后用对号按钮提交
menu.png
之后会弹出如下窗口,添加commit message就可以使用commit。默认情况下Android Studio会自动使用Lint工具检查代码,有兴趣的可以看一下这个文章。确定没有问题之后使用commit提交。
Android Studio代码检查Lint工具
git commit还没有把代码提交到GitHub,之后我们需要使用这个命令,把本地仓库的内容推送到之前绑定的远程仓库。
git push -u origin master
8.2 使用命令提交
上面是使用Android Studio提交,大家可以使用下面提交代码
git pull
git add -A
git commit -m "描述"
git push -u origin master
8.3 在GitHub查看
result.png如果一切OK,代码已经提交到GitHub。到此GitHub仓库创建和提交代码的过程就结束了,大家又可以继续愉快的Coding了~