sunruntheway

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   再重新配置。

 

分类:

技术点:

相关文章: