<git 管理代码>使用方法 & 常见问题解决方案

首先:搭建了git平台,那就有一个属于你们自己的网址 比如:http://101.***.***.***:8088,(打开会进入一个登录页面的)

如下图:

图一:

图二:

图三:



图四:


s

上面的图片好像需要一个key? 那么问题就就来了,key 怎么获取呢

下面我讲一一介绍



在图三中,

《点击上面图片 上的  add an SSH key 》,会进入到一个页面,此页面是 添加SSH key 的说明,不过是英文的,自己可以去百度翻译下,中文的可以自己去看其他的博客

比如参考博客:http://blog.163.com/www_iloveyou_com/blog/static/2116583722013111113954760/

我们可以通过命令行来生成SSH key

administrator:~ administrator$ cd ~/.ssh

-bash: cd: /Users/administrator/.ssh: No such file or directory

administrator:~ administrator$ config  id_rsa  id_rsa.pub  known_hosts

-bash: config: command not found

administrator:~ administrator$ ssh-keygen -t rsa -C "添加自己的邮箱"

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/administrator/.ssh/id_rsa):

Created directory '/Users/administrator/.ssh'.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /Users/administrator/.ssh/id_rsa.

Your public key has been saved in /Users/administrator/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:IdZ/tJj2Sf/vVcEaABT268Clacr58pxEx0oQs+Fn6CU 1208535097@q q.com

The key's randomart image is:

+---[RSA 2048]----+

|      +.=o.    |

|      ..B . . .  |

|      oEo+ o.. o |

|    ...Bo=+..o .|

|      .SO=++.  .|

|      . *.=+ o  .|

|      + o .o . .|

|      .+ .    ..|

|        o=    .=|

+----[SHA256]-----+

administrator:~ administrator$ pbcopy < ~/.ssh/id_rsa.pub

administrator:~ administrator$ git add .

fatal: Not a git repository (or any of the parent directories): .git

administrator:~ administrator$ git config --global user.name "mjq"

administrator:~ administrator$

最后得到了两个文件:id_rsa和id_rsa.pub:在此目录下,自己可以搜到到,下面会用到的哦

Your identification has been saved in /Users/administrator/.ssh/id_rsa.

Your public key has been saved in /Users/administrator/.ssh/id_rsa.pub.

然后自己去上面图片显示的页面 去 添加 SSH key


保存以后,再次刷新 第二个页面时,没有出现

you won't be able to push project code via SSH until you add an SSH key to you profilesh

说明ssh key 已经添加好了(当然,有些git 不添加也可以去使用,当你的git 服务器没有使用SSH ,使用的是http时候,就不需要配置ssh)

-------------------------------------------------------

上面的事情就可以告一段落了,如果这样就认为这是一个和谐社会,那你就想多了

不是说好的 git 管理代码的使用说明,好像什么都没有说呀

哈哈哈......

我们继续

下面将隆重介绍 git 的使用方法 及其 常见问题的解决方案:


********************** 功能:上传项目到 git **********************

前提: 把项目里面 自带的git 文件删除,如果不删除,输入命令git init 时,

会显示Reinitialized existing Git repository in.. ..

再输入 git status 时,

On branch masternothing to commit, working directory clean(翻译:无提交,工作目录清洁)

当你把项目修改过,执行第一步中的  cd /Users/administrator/Desktop/BYM3.4  、第二步git status ,后此时会出现On branch masterChanges to be committed:  (use "git reset HEAD..." to unstage)modified:  asd.xcodeproj/project.pbxprojnew file:  asd/dd.hnew file:  asd/dd.m(这些文件是你修改的文件,不用管它)执行第三步就好,然后,继续执行就可以了



第一步:

administrator:~ administrator$ cd /Users/administrator/Desktop/BYM3.4

 administrator:BYM3.4 administrator$ git init

Initialized empty Git repository in /Users/administrator/Desktop/BYM3.4/.git/

第二步:

administrator:BYM3.4 administrator$git status

On branch masterInitial commitUntracked files:  (use "git add..." to include in what will be committed)

WGZY.xcodeproj/

WGZY/

WGZYTests/

nothing added to commit but untracked files present (use "git add" to track)

第三步:

administrator:BYM3.4 administrator$ git add .

第四步:

administrator:BYM3.4 administrator$git commit -m "first commit"

[master (root-commit) c016112] first commit

1737 files changed, 111203 insertions(+)

create mode 100755 WGZY.xcodeproj/project.pbxproj

create mode 100755 WGZY.xcodeproj/project.xcworkspace/contents.xcworkspacedata

create mode 100755 WGZY.xcodeproj/project.xcworkspace/xcshareddata/WGZY.xccheckout

….(省略很多)

create mode 100755 WGZYTests/Info.plist

create mode 100755 WGZYTests/WGZYTests.m

第五步:

administrator:BYM3.4 administrator$ git remote add origin http://git.baiyimao.com/baiyimaoDevolep/iOS.git

第六步:

administrator:BYM3.4 administrator$ git push origin master

Counting objects: 1873, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (1858/1858), done.

Writing objects: 100% (1873/1873), 92.43 MiB | 411.00 KiB/s, done.

Total 1873 (delta 312), reused 0 (delta 0)

To http://git.baiyimao.com/baiyimaoDevolep/iOS.git

* [new branch]      master -> master

administrator:BYM3.4 administrator$

上述是比较顺利的 中间没有什么插曲,但是,时间如果有这么多的一番风顺,那么博客就不用写着么多了,

下面我将介绍一下 常见的问题:

问题一

输入如下命令时:

administrator:BYM3.4 administrator$git push origin master

错误:

To http://git.baiyimao.com/baiyimaoDevolep/WGZY.git

! [rejected]        master -> master (fetch first)

error: failed to push some refs to 'http://git.baiyimao.com/baiyimaoDevolep/WGZY.git'

hint: Updates were rejected because the remote contains work that you do

hint: 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' for details.

解决方案:

在使用git 对源代码进行push到gitHub时可能会出错,信息如下

此时很多人会尝试下面的命令把当前分支代码上传到master分支上

$ git push -u origin master

但依然没能解决问题

出现错误的主要原因是github中的README.md文件不在本地代码目录中

可以通过如下命令进行代码合并【注:pull=fetch+merge]

git pull --rebase origin master

执行上面代码后可以看到本地代码库中多了README.md文件

问题二

输入如下命令时:

administrator:GitTestAAA administrator$ git remote add origin git@iZ23bbkx4wiZ:test/WGZY.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"]那一行

刪掉就好了!

问题三

输入命令如下:

administrator:GitTestAAA administrator$git init

错误:

Reinitialized existing Git repository in /Users/administrator/Desktop/GitTestAAA/.git/

解决方案: 在前面已经说了

问题四:

输入命令如下:(clone 项目代码)

git clone http://git.baiyimao.com/Test/iOS.git

错误:

Username for 'http://git.baiyimao.com': 123456789@qq.com

Password for 'http://739929409@qq.com@git.baiyimao.com':

remote: HTTP Basic: Access denied

fatal: Authentication failed for 'http://git.baiyimao.com/test/iOS.git/'

fatal: not in a git directory

解决方案:原因是 没有 初始化git,输入命令行即可 git init ,然后再去clone 项目(把项目clone到一个指定的文件里面 做法是

cd /Users/administrator/Desktop/testProject01

其他问题

在 Mac 文件的文件名前添加 . 即可使文件隐藏

也可以在终端里面能用命令来控制

显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles YES

隐藏Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles NO

命令运行后需要按 Command Option Esc 选中 Finder 然后点一下 重新开启 就 Ok 了

注:

但别人把项目  clone 下来以后,然后与 remote origin (远程仓库)重新连接,这样就可进行多人管理代码了:git remote add origin git@iZ23bbkx4wiZ:baiyimaoDevolep/WGZY.git

参考博客:

http://www.cocoachina.com/ios/20140524/8536.html

http://blog.csdn.net/csucfl/article/details/50403425

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,440评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,814评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,427评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,710评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,625评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,014评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,511评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,162评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,311评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,262评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,278评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,989评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,583评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,664评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,904评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,274评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,856评论 2 339

推荐阅读更多精彩内容

  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,643评论 4 54
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,561评论 18 139
  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,617评论 9 163
  • 之一 月夜 不眠之夜,姑娘 你是我一生的痛疼与伤口 当如水的月光拨满大地 我便走进了一个无形的陷阱 一个银色的童话...
    闲不语阅读 574评论 2 2
  • 张爱玲说:也许每一个男子全都有过这样的两个女人,至少两个。娶了红玫瑰,久而久之,红的变了墙上的一抹蚊子血,白的还是...
    DJ陈牧阅读 518评论 0 2