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

Git 项目上传至github入门实战并解决常见错误

2015-12-12 19:14 621 查看
1.Git GUI

首先,在push到github的项目必须先建立版本(即creat  repository的名字一样),一般是先pull下来,再push(为了防止有其他人提交了代码,而你却不知道,造成的一些冲突)





进行第三步时,必须写提交描述,否则报错,如下



最后一步,需要填写目的路径,直接github上粘贴相应版本路径即可,还必须输入github的名字和密码

成功后,如图:



下面写一下,一般push失败的原因,其实上面也已经提到,(为了防止有其他人提交了代码,而你却不知道,造成的一些冲突)所以都是要求你先pull下来,Merge之后,再push。

pull:Remote->add-弹出如图对话框



name:随意填写(我这里命名:java,虽然随意,但是应该与下面Merge里填写的对应);Location:你要pull下来的repository(版本)路径,点击add.

Merge: Merge->Local Merge->弹出如图对话框



选择Revision Expression:填写需要Merge的版本,这里的java:是我pull下来时自定义的name对应。master是本地repository默认的。点击Merge。



push:现在push,就没什么好说的了,粘贴上目的路径,之后填写github名字和密码即可。

2. Git Bash:(先介绍一些常用代码)

git init     初始化

git add .    将所有文件加入版本         

git add  文件名.后缀将某一文件加入版本

git commit -m "添加的注释" 提交文件(虽然前面可以add很多次,但最后commit一次即可)

git push -u origin master(其实就是目的版本路径的代名词) -f

不知道为什么我的origin master不行,我只能输入目的版本的URL路径代替

eg:


为什么我在最后都要带上-f呢?这其实是一个很霸道的功能,因为前面已经说过一般需要先pull,再push,否则会push失败(失败这其实也是为了我们好),但是一旦加上这个参数,就不会失败,即使有冲突。所以尽量不要用这个霸道的参数。

git clone 目的版本路径  从目的版本路径下载即pull.   

git branch
查看本地分支

git branch -a
显示本地、服务器所有分支

git branch -vv
显示本地分支和服务器分支的映射关系

git merge master
合并本地master分支到当前分支,比如当前处于dev分支,则把master上的代码merge到dev分支上

git merge origin/master
合并远程master分支到当前分支

git checkout {{branch_name}}
切换分支(和创建分支就差一个-b参数)    

git checkout -b  [分支名] 
创建新分支,新分支的代码来自于当前分支

再来说说git push -u和git branch --set-upstream-to指令之间的区别。

举个例子:我要把本地分支master与远程仓库origin里的分支gaga建立关联。

(如果使用下列途径1的话,首先,你要切换到master分支上(git checkout master))

两个途径:1. git push -u origin gaga 2. git branch --set-upstream-to=origin/gaga master

这两种方式都可以达到目的。但是1方法更通用,因为你的远程库有可能并没有gaga分支,这种情况下你用2方法就不可行,连目标分支都不存在,怎么进行关联呢?所以可以总结一下:git push -u origin gaga 相当于 git push origin gaga + git branch --set-upstream-to=origin/gaga master

3.常见错误解决

3.1 如果输入$ git remote add origin git@github.com:xxx(github帐号名)/xxx(项目名).git 

    提示出错信息:fatal: remote origin already exists.

    解决办法如下:

    1、先输入$ git remote rm origin

    2、再输入$ git remote add origin git@github.com:djqiang/gitdemo.git 就不会报错了!

    3、如果输入$ git remote rm origin 还是报错的话,error: Could not
remove config section 'remote.origin'. 我们需要修改gitconfig文件的内容

    4、找到你的github的安装路径,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc

    5、找到一个名为gitconfig的文件,打开它把里面的
[remote "origin"]那一行
删掉就好了!

 

3.2如果输入$ git push origin master

    提示出错信息:error:failed to push som refs to .......(此时说明需要先pull,再push)

    解决办法如下:

    1、先输入$ git pull origin master //先把远程服务器github上面的文件拉下来

    2、再输入$ git push origin master

    3、如果出现报错 fatal: Couldn't find remote ref master或者fatal: 'origin' does not appear to be a git repository以及fatal:
Could not read from remote repository.

    4、则需要重新输入$ git remote add origin git@github.com:xxx/xxx.git(如果还有问题,参看前面)

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: