Git初识,解决你工作中大部分问题

首先git是什么就详细介绍了,用过git都知道它比svn的方便


安装Git

Windows平台安装Git,下载地址:https://git-scm.com
安装成功后,桌面右键,出现如下图标表示安装成功

here,here

初次使用的用户

  • 用户信息

    • 第一个要配置的是你个人的用户名称和电子邮件地址。这两条配置很重要,每次 Git 提交时都会引用这两条信息,说明是谁提交了更新,所以会随更新内容一起被永久纳入历史记录:
    $ git config --global user.name "username"
    $ git config --global user.email "email@example.com"
    
  • 为了方便以后使用可以设置SSH公钥

    $cd ~/.ssh  //切换到相应目录,安装位置
    $ls 
    id_rsa  id_rsa.pub  known_hosts  //如果是初次,ls里面是没有这几个文件的. 
    //.pub 文件是你的公钥,另一个则是私钥。 如果找不到这样的文件(或者根本没有 .ssh 目录),你可以通过运行 ssh-keygen 程序来创建它们
    
    $ssh-keygen //连续回车3次
    $ cat ~/.ssh/id_rsa.pub  //用于查看公钥
    
    image.png
image.png

将上面的公钥复制粘贴

image.png
  • 开始干正事

    • git上创建一个线上创库


      image.png
  • 关键来了

//cd到创建的文件夹下

错误提示技解决

image.png

出现这种错误是因为没有在github账号添加SSH key
解决方法

$ ssh-keygen -t rsa -C "username"  //连续回车
//如果执行成功
$ cat ~/.ssh/id_rsa.pub  //用于查看生成的公钥
//将公钥保存到 GitHub 中即可

下面重点、重点、重点开始进入使用阶段


项目团队不大,几人开发,应该使用的都是同一分支,开发者在开发不同模块,没有修改共同文件时,这个时候即使不做commit,拉去代码也是成功的,建议先提交再拉去

拉去出现冲突,此时需要我们先手动解决冲突,再提交推送,新推荐一个软件Visual Studio Code前端开发利器,很好的支持Git相关操作,小乌龟也不错,都挺轻量级工具
命令行

$ git diff
diff --cc gitTest/a.md
index 69367ae,62e065d..0000000
--- a/gitTest/a.md
+++ b/gitTest/a.md
@@@ -1,1 -1,2 +1,6 @@@
++<<<<<<< HEAD
 +A first edit + 1+1
++=======
+ A first edit
+ K first edit
++>>>>>>> 18be8efb5fc2ab2ec6c65bdd9fb01edf3d48cd72

冲突文件a.md,vi 命令修改也行

<<<<<<< HEAD
A first edit + 1+1
=======
A first edit
K first edit
>>>>>>> 18be8efb5fc2ab2ec6c65bdd9fb01edf3d48cd72
//修改后内容如下
$ cat a.md

A first edit + 1+1
K first edit
//此时冲突已解决,提交自己的代码,add、commit、push
  • 多人开发使用分支,常见问题(分支合并
//创建并且换到dev分支
$ git checkout -b dev  
//查看当前分支
$ git branch
* dev    //* 表示当前分支
  master

在dev分支修改a.md文件

$ cat a.md

A first edit + 1+1
K first edit
A dev first edit   //这里是添加的一行
//提交并推

这里提交到了我们自己分支,真正发版的文件还是master分支中的文件,所以我们把dev分支的工作成果合并到master分支上

//先切换到master分支
$ git chechout master
//查看当前分支
$ git branch
  dev
* master
//可以查看devmaster分支状态,发现是没有修改的,因为我们修改的是dev
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working tree clean
//合并分支
$ git merge dev
Updating 52d9df0..fd715db
Fast-forward
 gitTest/a.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
//查看合并后的a.md
$ cat a.md
A first edit + 1+1
K first edit
A dev first edit  //此时master文件已经被修改
//后面我们可以删除dev分支或者继续切换到dev分支上继续玩耍
$ git branch -d dev  //删除分支命令
Deleted branch dev (was b17d20e).
  • 另一种场景,K同事在A同事合并之前提交代码到master分支
//先切换到master分支,拉去代码,并解决冲突
//再接着必须add 、commit冲突文件,否则无法merge
$ git merge dev
fatal: You have not concluded your merge (MERGE_HEAD exists).
Please, commit your changes before you merge.
//开始合并
$ git merge dev
Auto-merging gitTest/a.md
CONFLICT (content): Merge conflict in gitTest/a.md   //合并出现冲突,那就解决
Automatic merge failed; fix conflicts and then commit the result.
//之后重复上面提交,最后push ,master分支已经是最新的了

既然master最新的了,dev分支也是要更新的,切换到dev分支重复上面工作

期间可能会遇到其他问题,请在评论区留言,相互讨论,一些使用小技巧需要多注意下,可以提高开发效率

希望对你有所帮助

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

推荐阅读更多精彩内容