您的位置:首页 > 编程语言

AS中Git与GitHub的使用入门

2016-10-31 18:02 399 查看
一直想把自己的写的开源小项目放到github中,这两天才花时间来学学Git。遇到些问题,百度了很多才解决。跟SVN一样,值得写一篇总结记录下,虽然上资源很多,但作为入门,自己遇到的写出来完全不一样。


一、 Git与GitHub的简单介绍

Git是一个开源的分布式版本控制工具。 

GitHub是一个使用Git作为版本控制的项目托管平台,它是一个网站。 

详细请参考:http://www.cnblogs.com/cocowool/archive/2012/02/17/2356125.html


二、 Git的安装

下载地址:https://git-scm.com/download/win 或 https://git-for-windows.github.io/ 

安装时,全部默认选择即可。


三、 AS中配置Git与GitHub


1. Git的配置

在Settings设置中。 

Path to Git executable: 【Git安装后的路径】 

然后“Test”测试一下,成功才可以。 




2. GitHub的配置

Host: github.com 

Login: 【你的github用户名】 

Password: 【github登录密码】 

填好后,也进行“Test”测试一下,同样成功才可以。 



测试完后按确定,会提示你是否设置密码,看个人需求。 




四、 上传代码到GitHub


1. 创建GitHub仓库

在Github上创建一个仓库: 



创建好后,将是这个样子,里面包括一个.gitignore忽略配置文件和一个README.md



git地址如下: 




2. 创建Git本地仓库

选择工程 —— VCS —— …… 



此时,VCS的5个图标显示出来了,且要提交的文件名都是暗红色 




3. 把工程add添加到仓库

选择工程 —— 右键 —— Git —— Add 



Add后待提交的文件名是绿色


4. commit提交



CommitMessage:填入提交说明信息。主要用于说明你做了哪些修改。



按Commit提交即可。 

注:我每次都无法提交,commit后,进度对话框走到一半就立马消失了。解决办法见下面常见问题的“无法commit”。 

提交后的文件颜色是灰白色。修改过的文件时淡蓝色


5. push推送到GitHub

Commit后会自动弹出Push推送窗口,点“Define remote”。 

Name:默认origin 

URL:就是github的网页地址,上面已提供获取方法 



上面的界面操作,等同于Git Bash中使用命令: 
git remote add origin https://github.com/zjun615/GitHubTest.git[/code] 


然后“OK”再“Push” 

注:我这里的Push也会出问题,见下面的解决方法 



刷新github后,就能看到上传的工程文件: 




五、 常见问题


1. 无法commit

因为会检查代码,就算没有错误,只有警告它也会让你无法提交。不会像单个文件的提交一样,提示你选择Review还是继续commit。所以就取消提交页面的“Perform code analysis”选项 




2. 无法push推送

现象: 

Push的时候,弹出错误信息:Push rejected,Push to origin/master was rejected 


 

控制台输出的详细错误信息: 



原因: 

通过上述错误信息,告诉我们github中有我们本地没有的文件,需要先pull。在VCS —— Git —— Pull 



Pull也会报错:Git Pull Failed,fatal: refusing to merge unrelated histories 





也就是说直接pull也是不行的。并提示拒绝合并两个不相关的仓库

解决办法: 

打开Git Bush。本地资源管理器的工程目录下,右键——Git Bush Here。或直接打开Git Bash,然后用cd命令打开工程目录。 

输入命令:git pull origin master –allow-unrelated-histories 

表示允许不相关的仓库合并。 


 

此时,你可以看到工程中多了两个github中的两个文件 



其中.gitignore文件是还没有添加的,需要添加然后提交。 

添加命令:git add .gitignore 

提交命令:git commit 



添加后提交,会弹出提交的提示信息: 


 

这里是VIM文本编辑器让你提交。操作命令: 

进入到输入状态:按i键 

从输入状态退出:Esc键 —— Shift+;键 —— wq!(保存并退出)或q!(不保存退出) —— Enter

最后使用提交,命令:git push –u origin master 


 

上面信息代表上传成功,去github看看就知道了。

此问题困扰了我很久才解决,最主要的就是这条命令: 
git pull origin master –allow-unrelated-histories 

其他的命令都可以在界面上操作。 

参考:http://stackoverflow.com/questions/37937984/git-refusing-to-merge-unrelated-histories

 如果pull不成功,可以删除本地.gitignore文件,从github上面获取,然后在push


3. 取消工程与Git的关联

在本地项目工程下有一个.git文件夹,删除即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: