自己写了小项目上传到 git 期间遇到了些问题,记录下来希望对大家有用。
一、设置
1.创建 git 仓库
创建仓库2.仓库设置
设置仓库3.复制地址
复制仓库地址二、通过git bash 上传代码
1.首先在Git Bash中使用cd命令进入对应的本地项目路录,按照下面的命令操作:
1.1)git init 表示在当前的项目目录中生成本地的git管理。
1.2)git add . “.”表示添加当前目录中的所有文件。
1.3)git commit -m “first commit”,表示你对这次提交的注释。
git commit -m “提交的描述信息” 如果我们这里不用-m参数的话,git将调到一个文本编译器(通常是vim)来让你输入提交的描述信息git commit -a -m “提交的描述信息” ,命令的-a 选项可以把所有被修改或者已经删除的且已经被git管理的文档提交到仓库中。如果只是修改或者删除了已被Git 管理的文档,是没必要使用git add 命令的。git commit –-amend 对于已经修改提交过的注释,如果需要修改,可以借助 git commit –-amend 来进行。
1.4)git remote add origin https://github.com/XXXX/XXX.git 就是项目地址,将你本地仓库与git上的远程仓库关联起来。
1.5)git push -u origin master 用于将本地分支的更新,推送到远程主机,最后根据提示输入用户名和密码。
-u选项指定一个默认主机。
注意:如下是push之后遇到的问题
1.这一步可能会提示你:
! [rejected] master -> master (fetch first),
这事因为git仓库已经有内容了,这时你需要先利用git pull命令同步代码,步骤如下:
直接用git pull origin <分支名称(默认master)> 拉下服务器代码,如果没问题即解决了。
如果提示:fatal:refusing to merge unrelated histories
这时执行如下命令:git branch --set-upstream-to=origin/<分支名称> master,之后执行git pull origin master --allow-unrelated-histories,即可拉下代码,然后调用git push -u origin master即可上传代码。
2.可能出现如下错误
error: src refspec master does not match any.
error: failed to push some refs to'git@github.com:XXX/XXX.git'
原因:本地仓库为空
解决方法:使用如下命令 添加文件:
$ git add add.php addok.php conn.php del.php edit.php editok.php ftpsql.sql index.php
$ git commit -m"init files"
之后在push过程中出现如下错误:
$ git push -u origin master
Warning: Permanently added the RSA host key forIP address'xx.xx.xxx.xxx' to the list of known hosts.
To git@github.com:XXXX/XXX.git
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'git@github.com:XXXX/XXX.git'hint: Updates were rejected because the remote contains work that you dohint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards'in'git push --help'fordetails.
提示使用 git pull 之后再 push
使用如下命令解决:
$ git pull --rebase origin master
warning: no common commits
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From github.com:hahah/ftpmanage
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
First, rewinding head to replay your work on top of it...
Applying: init files
继续push,成功。
$ git push -u origin master
Counting objects: 10, done.
Delta compression usingup to2 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (10/10),5.15KiB |0bytes/s, done.
Total 10(delta3), reused0(delta0)
To git@github.com:hahaha/ftpmanage.git
a2b5c30..1044f15 master -> master
Branch master setup to track remote branch masterfromorigin.
网友评论