git使用总结

2018-04-24  本文已影响51人  卓三阳

要使用Git,第一步当然是安装Git了。安装完成后,你就可以开始git的使用啦。

(1)创建版本库

版本库又名仓库,英文名repository,你可以简单理解成一个被git管理起来的目录。

创建版本库很简单,新建一个目录,初始化就可以了。

 mkdir learngit
 cd learngit
 git init 

git - 如何从项目中删除git跟踪?

rm -rf .git

(2)把文件(修改)添加到版本库

我们可以在learngit目录下新建一个readme.txt文件,然后你可以做一些修改。


(3)版本回退之回到过去

我们再次修改readme.txt文件,然后提交。这里我们介绍两个git命令
git log命令显示当前版本从最近到最远的提交日志
git reflog用来记录你的每一次命令

log2.png
(4)版本回退之回到未来

现在,你回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?

完成上面的步骤后,我们需要将本地仓库与远程仓库建立联系


(5)添加远程仓库

这种情景是,你已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作。

git@github.com:zhuozenghua/learngit.git要你自己项目的地址


(6)从远程仓库克隆

上面是先有本地库,后有远程库的时候,如何关联远程库。
现在,假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆。


(7)解决git冲突

解决git冲突,假设同一个F文件,被操作者A和B都修改了.

解决思路:

  1. A先提交文件F,正常提交,无冲突问题
  2. B提交文件F时,报冲突.(git push),这是需要合并远程的变更
  3. B需要执行: git pull 操作,会自动将服务器端最新文件合并到本地F.(该文件F中,同时保留2个不同的修改点)
  4. B执行: git status 操作,显示冲突文件信息
  5. B执行: git diff 操作,显示文件F中的冲突点
  6. B执行: 用vi 打开 文件F, 查看到冲突处标记 <<<<<XXXXXXXYYYYYY=======>>>>>,手动删减,保留需要确认的部分
  7. 到这里,B本机的文件F已经在同步服务器端最新的F基础上,做了修改,变成"更加新的文件F"(比服务器端还新).
  8. 这样,再提交文件F.就不存在冲突问题.剩下的操作,就是正常的提交步骤
  9. git add XXXX
  10. git commit "xxxxyww"
  11. git push
  12. 输入账号名,密码
  13. 这样,就将"更加新的文件F"上传到服务器端.解决冲突问题
  14. 这个冲突解决问题,实际上和其他版本管理工具,没有啥本质区别
  15. 切换至A用户,再pull才能保持与远程一致

(8)分支管理

上面一切尝试我们都是基于master分支进行的。我们这里讲一下分支push过程中关联的问题,详细的分支操作参考文章后面的链接。

这里需要注意的本地git仓库中分支与github远程仓库中的分支没有一一对应的关系。

因此我们用git push命令的时候,必须先关联远程仓库的分支。

一种情况是远程没有该分支
新建分支用于开发:
git branch develop master //新建一个叫develop的分支,基于master分支
切换到这个分支:
git checkout develop
合并上面两步:git checkout -b develop master
现在可以在这个develop分支上做一些改动,并且提交。
然后设置一个远程仓库分支与之关联,git push -u origin命令会提示我们用下面的命令来完成
git push --set-upstream origin develop
以后我们就可以用git push origin提交了。

上面在远程仓库上新建分支我们也可以用:git push -u origin develop来实现

另一种情况是远程已经有你想要的分支
git clone+github地址的方法,项目默认只有master分支。git branch也只有master
要看所有的分支:git branch -a或者是git branch -r

这时候要新建一个分支,叫做dev,基于远程的dev分支:git branch dev origin/dev。我们也可以在创建是切换分支:git checkout -b dev origin/dev

合并分支
  git checkout master
  先转到主分支
  git merge --no-ff develop
  然后把develop分支merge过来

(9)建立里程碑

里程碑 = 稳定版本号.
里程碑的含义是: 一个阶段比较稳定的版本,正式提交发布出去.提供zip下载.

操作步骤:

  1. 在github网站上.进入项目首页.
  2. 横栏按钮(commits, branches, release等),找到release按钮.
  3. 找到按钮:draft a new release,点击进入下一页面.
  4. 填入版本号,以及说明信息.
  5. 完成后,点击publish release,将软件发布出去.
  6. 这样就完成里程碑建立,同时会自动生成zip下载链接.

(10)删除github上的文件夹,而不删除本地文件

git rm --cached -r admin
git commit -m "delete admin directory"
git push

其他

Git版本控制:Github的使用之 多人协作及参与项目

参考:
廖雪峰git教程

上一篇下一篇

猜你喜欢

热点阅读