IDEA配置:
首先安装git for windows http://msysgit.github.io/
可以在任何目录 右键——git bash 弹出对应路径的 git 命令行窗口 而且启动速度比较快
在Intellij中Settings——Version Control——Git——Path to Git executable
找到安装git bin目录下的git.exe
1.方法一 适用于新建项目
先在Git@OSC上创建仓库 拿到Git@OSC仓库的HTTP连接http://git.oschina.net/lujianing/GitOSC.git
在Intellij IDEA工具栏中 VCS——Checkout from Version Control——Git 粘贴 URL 然后点击CLONE
会创建并且复制仓库文件到本地项目中,注意:你创建的是一个poject,请自行创建对应的model。 然后你可以做相应的修改操作,你就可以在本地项目中进行Git add commit等操作了
最后可以在项目中Git ——Repositroy——PUSH 提交到Git@OSC中了(第一次提示输入账号密码)
就是这么简单 有木有....
下面是对应的一些截图
2.方法二 适用于已有项目
先在Git@OSC上创建仓库 拿到Git@OSC仓库的HTTP连接http://git.oschina.net/lujianing/test2.git
如果本地项目非Git项目 首先把项目变成Git的项目
在intellij中 VCS——Import into Version Control——Create Git Repository 选择你的本地项目
通过git shell (可以安装git for window) 进入到项目目录 执行
git remote add origin http://git.oschina.net/lujianing/test2.git
git push -u origin master (这个是命令行提交项目可以不用执行 参考方法一中在intellij中push)
如果提交失败 请参考git提示进行解决 比如已经有remote地址 可以git remote rm origin清除
如果是仓库中有其他文件 本地项目中没有 可以参考后两个图 首先merge项目
项目就提交到Git@OSC了 以后的再有修改提交仓库就可以参考方法一的push操作了
就是这么简单有木有
下面是对应的一些截图
git for windows推荐使用这个: http://msysgit.github.io/
可以任何目录 右键——git bash 弹出对应路径的 git 命令行窗口 而且启动速度比较快
对于方法二 适用于已有项目
通过命令行 git remote add origin xxxxxxx 后 添加远程连接后
首先 git remote pull 从远程同步项目文件
常见错误 :
1.error:failed to push some refs to ...
当要 push 代码到 git 时,出现提示:
|
error:failed to push some refs to ... Dealing with "non-fast-forward" errors From time to time you may encounter this error while pushing: $ git push origin master To ../remote/ ! [rejected] master -> master (non-fast forward) error: failed to push some refs to \'../remote/\' To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes before pushing again. See the \'non-fast forward\' section of \'git push --help\' for details. |
问题( Non-fast-forward )的出现原因在于: git 仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。于是你有 2 个选择方式:
强推,即利用强覆盖方式用你本地的代码替代 git 仓库内的内容
git push -f
2. 先把 git 的东西 fetch 到你本地然后 merge 后再 push
$ git fetch
$ git merge
这 2 句命令等价于
$ git pull
可是,这时候又出现了如下的问题:
上面出现的 [branch "master"] 是需要明确 (.git/config) 如下的内容
|
[branch "master"] remote = origin merge = refs/heads/master |
这等于告诉 git2 件事 :
1 ,当你处于 master branch, 默认的 remote 就是 origin 。
2 ,当你在 master branch 上使用 git pull 时,没有指定 remote 和 branch ,那么 git就会采用默认的 remote (也就是 origin )来 merge 在 master branch 上所有的改变
如果不想或者不会编辑 config 文件的话,可以在 bush 上输入如下命令行:
$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master
之后再重新 git pull 下。最后 git push 你的代码吧。
3.git 错误: fatal: remote origin already exists.
输入 git remote rm origin 即可
4. 如何同时维护多个 GIT REMOTE 及 FATAL: REMOTE ORIGIN ALREADY EXISTS 的问题解决
微信公众群比如 \'python-django\' 里不少小伙伴都在使用 github 做开源代码,为了分享面更广泛能不能同时维护多个 git 而不用同一源码在本地拷贝多份呢?
答案是可以的,举个例子,我有个项目已经在 github 上了:
$ git remote add origin http://github.com/objcc/HappyNewYearIOS.git
查看配置:
$ vi .git/config
[remote "origin"]
url = https://github.com/objcc/HappyNewYearIOS.git
fetch = +refs/heads/*:refs/remotes/origin/*
会报 "fatal: remote origin already exists" 错误失败。解决方法是换个名字:
$ git remote add oschina http://git.oschina.net/objcc/HappyNewYearIOS.git
$ git push oscine master
$ git remote -v
origin https://github.com/objcc/HappyNewYearIOS.git (fetch)
origin https://github.com/objcc/HappyNewYearIOS.git (push)
oschina http://git.oschina.net/objcc/HappyNewYearIOS.git (fetch)
oschina http://git.oschina.net/objcc/HappyNewYearIOS.git (push)
这里将 \'orign\' 换成了 \'oschina\' ,然后在 push 到 osc 时也是一样。
安装 GIT 请看 oschina 的帮助文档 , 注意 , 注册完帐号后要在帐号配置中重置密码,刚开始不知道。折腾半天。刚注册完的密码可能为空。
1.创建本地仓库
在IDEA中创建任意一个项目,在IDEA的菜单栏中选择 VCS (倒数第三项),选择Import into Version Control (引入到版本控制) -->
Create Git Repository... -->选择一个存放的路径(本文为:I:\workspace\NCPlatform)--> OK
这样就创建了一个本地仓库, 以后代码的本地提交(Commit)的内容都会更新到这个选择的路径中
2.将项目提交到本地的Git
选中项目(或者文件) 右键选择Git--->Add (此时没任何反应)---->commit(提交) 注意:一定要先add 再提交
此时项目文件就添加到本地仓库了
关于远程仓库的配置
1.在github上创建一个仓库 :
登陆你的github -->点击你的用户名 -->选择Repositories--> 点击绿色-->输入你的仓库名称
(此时远程仓库创建完成)
2.通过Git shell 配置远程仓库:
①进入到项目目录:
然后复制刚才创建的远程仓库的HTTPS/SSH KEY (此处使用的SSH),在Git shell 中键入如下脚本
git remote add origin git@github.com :teamaxxiaohu/NCPlatform.git(此处为你自己远程仓库的key)
git push -u origin master (解释:该脚本将本地的master 推到刚才设置的github远程仓库中)
如果执行完成2条脚本,没有任何提示,也没任何错误,恭喜你成功了!
3. 回到IDEA,选择项目 -->Git -->Repository --Push 即可将本地的文件推送到远程仓库中,然后刷新你的github仓库你就会看到
你提交的本地内容了,同时你在idea中也能看到你的操作信息。
注意:在执行 通过Gitshell配置远程仓库的时候可能会出现一些意外:
1. 提示这个仓库已经存在(fatal: remote origin already exists) ,如果是这样 就不需要使用add + 地址的形式了 ,请修改为:
git remote rm origin
2.提示不能移除配置信息错误(.error: Could not remove config section \'remote.origin\')
解决方案: 在window/用户下面找到.gitconfig文件 (本文路径为:C:\Users\Vincent_2\.gitconfig)
打开它把里面的[remote "origin"]那一行删掉 重启gitshell 再重新配置。