虽然很早就申请了GitHub的账户,但那只限于在网络上获取resource,自己还没有提交过代码。现在学习使用GitHub。
以前也用过一些代码托管工具TortoiseSVN,但是还是跟潮流,选择开源的GitHub,希望自己严谨对待代码,贡献自己一份力。
这里使用的不是GitHub的桌面端,而是Git for Windows,因为觉得GitHub desktop很鸡肋。
Git for Windows的下载地址:
链接:https://pan.baidu.com/s/1CMLu7AEywmqgqMjU4r-grQ
提取码:zqxu
Git for Windows学习链接:
http://www.cnblogs.com/schaepher/p/5561193.html#local
安装时选定安装地址后,在下面途中勾选Git Bash Here和Git GUI Here
然后一路next。
首先选定一个文件夹作为Git文件的存放目录
然后对这个文件夹进行初始化,即在该文件夹中鼠标右击,点击Git Bash Here,在shell中输入git init进行初始化,会出现一个.git的隐藏文件夹
输入git status 查看状态
会发现文件夹中两个txt文件中中文文件的名称会出现乱码。
如何解决乱码问题呢?输入git config --global core.quotepath false,再使用git status则会发现中文命可以正常显示了!
git add "文件名" :上传文件,见下图。
git add -A :上传该文件夹中所有的文件
使用 git commit -m "提交信息" 来提交或者更新,见下图
但是提交的时候出现问题,就是要我输入账户
所以下面的内容是Git与GitHub关联使用
设置用户名:git config --global user.name "你的用户名"
设置邮箱:git config --global user.email "你的邮箱"
这样会在users的文件夹下出现一个.gitconfig文件
该文件内容为:
生成ssh key:ssh-keygen -t rsa -C "你的邮箱",注意,下面输入路径的时候尽量使用默认的
需要设置输出路径和passpharse(这个我是瞎逼输的)
接下来会在文件夹中出现这个文件
复制ssh key:打开文件直接复制。
连接GitHub:在网页中打开GitHub
输入KEY
但是呢?利用ssh -T [email protected]测试连接时出现了一个bug,如下图:
如何解决这个bug呢?
首先这条警告的意思是:为IP地址13.299.188.59的主机(RSA连接的)持久添加到hosts文件中,那就来添加吧!
打开C:\Windows\System32\drivers\etc\hosts
添加一行:13.229.188.59 github.com
但是还是不行,尴尬
网上给出的原因是密钥将在C盘中寻找,而我把密钥放在了F盘,所以不要瞎折腾,选择默认路径!!!!
测试成功!!
然后提交前面没有提交成功的文件:提交成功!
提交成功后,用git log查询提交信息
修改文件:
git status查看状态,则会发现文件状态显示为修改
git diff查看修改的内容
git checkout -- . (注意后面有小数点哦)撤销更改,发现文件恢复以前模样
然后再此修改并上传和提交,就会发现出现两个版本
版本回退命令 : git reset --hard 版本号前7位
则返回到原来的版本,使用git log 就只显示一个版本了
在网络上创建远程仓库
使用SSH关联本地仓库与远程仓库
在终端输入
git remote add origin [email protected]:codeFausto/gitLearning.git
如果你在创建 repository 的时候,加入了 README.md 或者 LICENSE ,那么 github 会拒绝你的 push 。你需要先执行
git pull origin master
执行 git push -u origin master
将本地仓库上传至Github的仓库并进行关联:
关联已经完成!
以后想在commit后同步到Github上,只要直接执行 git push
就行啦:提交成功!远程仓库中有本地仓库的内容了
下面是本人微信,有关学术及技术问题,欢迎互相交流。
觉得有用就送个四分之一个包子呗