使用git提交代码到远程仓库
想要将代码托管到github,首先你的电脑要有git环境,才能运行git命令,其次还要有一个github的账号(直接去github注册就可以,很简单)。满足这两个条件后,就可以使用下面的命令将代码提交到github了。
1.首先在git安装目录下找到并打开git-bash,设置基本信息:
2.切换目录到你要提交的文件所在目录,输入git init初始化一个本地仓库。如下:
3.输入git add 要提交文件夹的名称 ,将文件添加到跟踪列表
4输入git commit -m "提交信息" ,将文件提交到本地仓库,提交信息必须填写
5.输入git remote add origin github代码仓库的url地址,将代码仓库与github关联
6.输入git pull origin master,将远程代码仓库拉回到本地,第一次提交可以不加,但以后提交时要加,否则代码可能会杂糅在一起。
7.如果出现错误,原因可能是本地仓库缺少readme.md文件,使用 git pull --rebase origin master 命令进行代码合并即可。
8.输入git push -u origin master,将代码提交到github,输入回车后需要输入你的github名称和密码。
去到你的github仓库中刷新看一看有没有成功吧。
git其他的一些基本指令:
git status 显示代码库状态
git log 打印提交信息(更改信息)
git diff 对比当前状态和版本库中状态的变化
git reset --hard e44ff7(提交的状态码中的前六位,可以用git log查看) 恢复到之前的状态
git remote set-url origin URL URL为新的远程仓库地址。
git remote -v 可以看到当前本地仓库关联的远程仓库的url地址
若使用git对源代码push到github时会出错,提示fail to some refs to......
出现这个错误的主要原因是github中的README.md文件不在本地代码目录中,可以通过如下命令进行代码合并
git pull --rebase origin master
此时再执行语句git push -u origin master 即可完成代码上传到github。
git撤回操作
写完代码后,我们一般这样
git add . //添加所有文件
git commit -m "本功能全部完成"
执行完commit后,想撤回commit,怎么办?
这样凉拌:
git reset --soft HEAD^
这样就成功的撤销了你的commit
注意,仅仅是撤回commit操作,您写的代码仍然保留。
HEAD^的意思是上一个版本,也可以写成HEAD~1
如果你进行了2次commit,想都撤回,可以使用HEAD~2
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
不删除工作空间改动代码,撤销commit,不撤销git add .
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:
git commit --amend
此时会进入默认vim编辑器,修改注释完毕后保存就好了。
使用eclipse提交本地代码到github远程仓库
1、建立本地仓库
选择想要上传的项目,鼠标右键->team->share project 会弹出这样一个窗口
Repository是仓库的位置,默认是项目所在位置,也可以点击creat自定义仓库位置。project一栏中要选中自己想要上传的项目,然后点击finish。
2、上传项目到本地仓库
同样是选中项目,鼠标右键->team->commit 会弹出这样一个窗口
Staged changes一栏中包含上传的文件,Unstaged changes是多次提交中没有变化的文件,Commit message是本次提交信息,也就是这一次提交的名字。 Author和Committer分别指项目作者和邮箱,第一次提交需要填写,会记录在eclipse中之后就不用填写了。所有信息都填写好了之后点击Commit and Push即可。
3、向远程仓库提交项目
点击Commit and Push后,会弹出如下窗口
Remote是你的远程仓库地址,Branch表示本次提交是分支还是主干,一般都填写master,pull方式选择Merge,然后点击next
然后点击finish,确认提交信息后就大功告成了。去你的github上看一看有没有提交成功吧!
综上是关于用git提交项目到github的两种方法,这两种方法其实操作步骤是一样的,只不过eclipse提供了可视化界面的操作,而git bash只提供了命令行操作,虽然eclipse更直观,但一旦出现问题想要改正却无从下手。我建议两种提交方式都应掌握,以免紧急情况无法按时提交项目。
此篇文章内容大多来自网上,本人阅读了很多相关资料略作收集整理,将初学者的一些问题收集起来一起解答,希望能对一些小白略有帮助。
详细了解可以去下面几篇博客。
github新手使用教学
小白使用eclipse提交到GitHub (详细步骤)