GitHub创建项目

登录GitHub,在个人主页创建项目(repository)

创建后会生成2个文件,README.md.gitignore。如图

创建本地仓库

如果是第一次使用git的话,需要配置git的本地用户信息

git config --global user.name "username"
git config --global user.email "username@example.com"

同步Git信息

方式一(推荐)

使用git clone命令,会自动同步git仓库的信息。在Github项目页面的下拉框中选择HTTPS方式,复制链接。当然也可以使用SSH方式,但是前提是你已经配置了SSH公钥,有关SSH公钥的配置这里就不多说,好处就是可以不用输入密码。

git clone https://github.com/Lvzwq/AnimationTest.git



查看git仓库信息,git config -l

方式二

使用git init命令,自己配置git仓库的信息,并同步代码。



查看git仓库配置,git config -l



会发现比第一种方式少了仓库的地址的信息(remote.origin.url),执行

git remote add origin https://github.com/Lvzwq/AnimationTest.git

同步服务器代码, 使用git pull -u origin master, 同步远程仓库代码到本地

同步完成之后的本地仓库代码如图

提交本地新增的文件

首先我新增一个main.cpp

如图



使用git add -A提交本地所有更改,使用git status查看本地的文件状态



git commit -m "备注"提交到本地仓库,git push origin master 同步到远程仓库

查看gitlog日志,git log命令

提交到远程仓库的代码,已经和本地保持一致。如图

创建分支的基本操作



创建分支之后,远程仓库的状态如下

合并分支

test分支已经合并到 master 了,那么 test 也就没用了。你可以就此删除它,并在问题追踪系统里关闭该问题。

git branch -d test

遇到冲突时的分支合并

有时候合并操作并不会如此顺利。如果在不同的分支中都修改了同一个文件的同一部分,Git 就无法干净地把两者合到一起(译注:逻辑上说,这种问题只能由人来裁决。)。如果你在解决问题 #53 的过程中修改了 hotfix 中修改的部分,将得到类似下面的结果



Git 作了合并,但没有提交,它会停下来等你解决冲突。要看看哪些文件在合并时发生冲突,可以用 git status 查阅:

任何包含未解决冲突的文件都会以未合并(unmerged)的状态列出。Git 会在有冲突的文件里加入标准的冲突解决标记,可以通过它们来手工定位并解决这些冲突。可以看到README.md文件包含类似下面这样的部分:

# AnimationTest
动画测试
<<<<<<< HEAD
这是master分支
=======
这是test分支
>>>>>>> test

提交合并之后的文件。之后的git log日志如图

参考:Git Book

最新文章

  1. js数字位数太大导致参数精度丢失问题
  2. 【GO】GO语言学习笔记四
  3. java学习第12天
  4. 绿色ip扫描工具
  5. 以HTML为表现的日志记录组件
  6. 十天冲刺---Day10
  7. JavaScript备忘录(2)——闭包
  8. 数据库系统概论(第5版) P262 例8.12
  9. TOJ3540Consumer(有依赖的背包)
  10. CSS3单位
  11. Microsoft.DirectX.DirectSound学习(一)
  12. 对return 语句的正确性和效率进行检查
  13. APP H5 混合自动化使用说明 [基于 Appium+Python 系列]
  14. Win10开机“提示语音”以及”随机播放音乐”
  15. 查看局域网指定IP的电脑名
  16. Android中Bundle和Intent的区别
  17. 基础练习 回形取数 (循环 + Java 输入输出外挂)
  18. 洛谷P1220关路灯[区间DP 提前计算代价]
  19. Html插入Flash.object.embed.swf各个参数值详解介绍[等比例缩放]
  20. js 数组的增删改查

热门文章

  1. python centos上出现上下键和退格键均为乱码
  2. 如何循序渐进地学习Javascript
  3. Conditional Counting In SQL
  4. wcf调用oracle存储过程
  5. android AES 部分机器javax.crypto.BadPaddingException: pad block corrupted
  6. U6会计科目导入致对账不平
  7. POJ--1416
  8. linux网络子系统内核分析
  9. Node.js express路由简单分析
  10. 菜鸟学习Spring——第一个例子