前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在场景中使用Git

在场景中使用Git

作者头像
迹_Jason
发布2019-05-28 23:01:48
4360
发布2019-05-28 23:01:48
举报
文章被收录于专栏:迹_Jason的AppZone

说明

1、在[…]中的内容,需要根据实际情况进行修改

1、克隆工程

将远程的数据复制一份到本地

代码语言:javascript
复制
#【仓库copy地址】
git clone [git@rep.xx.com:zoeminghong/hello.git]
2、本地新建Git工程

现在打算将本地的工程,放到Git仓库进行托管了,并且远程Git仓库已经创建了该项目的工程

代码语言:javascript
复制
#本地初始化工程,会生成一个.git文件
git init

#将本地的工程与远程仓库中的项目进行关联(不用关心项目名不一致的问题)
#此时本地工程与远程仓库已经建立了联系
git remote add origin [git@rep.xx.com:zoeminghong/hello.git]

#将本地所有文件添加到Git中,进行监管
git add .

#将内容提交 【提交注释】
git commit -m "[...]"

#将本地的内容同步到远程仓库中
git push -u origin master
3、本地代码与远程代码冲突问题

本地代码未commit的前提下,解决与远程代码冲突问题

代码语言:javascript
复制
#将当前修改进行暂存起来
git stash

#获取最新的远程仓库代码
git pull

#恢复暂存的内容
git stash pop

本地代码已经commit后,解决与远程代码冲突问题

代码语言:javascript
复制
# 获取远端库最新信息 【分支名称】
git fetch origin [master]

# 做比较
git diff [本地分支名] origin/[远程分支名]

# 拉取最新代码,同时会让你merge冲突
git pull

方法2

代码语言:javascript
复制
# 获取最新代码到tmp分支上 [远程的分支:本地分支]
git fetch origin [master:tmp]

# 当前分支与tmp进行比较
git diff tmp

# 修改冲突部分,进行本地commit操作
git add .

git commit -m "[...]"

# 将tmp中内容合并到当前分支中
git merge tmp

# 删除分支
git branch -d tmp
4、回退到上一个commit节点,无log记录

当前内容没有commit的情况下

代码语言:javascript
复制
# 当前HEAD,返回到上一次commit点,不会有任何日志记录
git reset HEAD --hard

最近内容已经commit的情况下

代码语言:javascript
复制
git reset HEAD^ --hard
5、回退到上一个commit节点,存在log记录

当前内容没有commit的情况下

代码语言:javascript
复制
# 当前HEAD,返回到上一次commit点
git revert HEAD

最近内容已经commit的情况下

代码语言:javascript
复制
git revert HEAD^
6、切换到指定commit节点

不存在log记录

代码语言:javascript
复制
# 获取所有的HEAD更改信息的sha1值
git reflog

# 切换至指定的sha1节点
git reset --hard [sha1值]
7、删除文件

保留副本操作

代码语言:javascript
复制
git rm --cache [文件名]

还原操作

代码语言:javascript
复制
git reset HEAD [文件名]

直接文件删除

代码语言:javascript
复制
git rm [文件名]

还原操作

代码语言:javascript
复制
git reset HEAD [文件名]

git checkout -- [文件名]
8、本地分支与远程分支相连

本地创建了一个分支,远程也有一个分支,进行两者关联

代码语言:javascript
复制
git checkout -b [本地分支名] origin/[远程分支名]
9、Tag使用

我们在开发的时候,可能存在线上发布了一个版本,需要给这个版本代码打上一个标签,到时候可以方便回退到这个版本

代码语言:javascript
复制
# 创建tag 【tag名】
git tag v1.0

# 查看存在的tag
git tag

# 将tag更新到远程
git push origin --tags

接下来就讲解回退到具体的tag

代码语言:javascript
复制
# 保存当前编程环境
git stash

# 切换回某个tag(v1.0)
git show v1.0 

#【sha1】
git reset --hard [2da7ef1]

# 创建分支来保存tag的数据,tag只是一个节点的标记,无法承载数据的修改记录,【分支名】
git checkout -b [bill]

# 接着你就可以在这里改啊改了

切换回主干或其他分支

代码语言:javascript
复制
# 切换分支
git checkout master

# 日志记录
git reflog

# 显示stash列表
git stash list

# 恢复之前的工作环境代码
git stash apply

# 删除stash
git stash drop

分支与主干合并

代码语言:javascript
复制
git add .

git commit -m "v1.1"

# bill分支合并到当前分支【分支名】
git merge [bill]
10、关于代码的比较
代码语言:javascript
复制
# 显示暂存区和工作区的差异
$ git diff

# 显示暂存区和上一个commit的差异【文件名】
$ git diff --cached [hell.txt]

# 显示工作区与当前分支最新commit之间的差异
$ git diff HEAD

# 显示两次提交之间的差异【分支名】
$ git diff [first-branch]...[second-branch]
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-11-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、克隆工程
  • 2、本地新建Git工程
  • 3、本地代码与远程代码冲突问题
  • 4、回退到上一个commit节点,无log记录
  • 5、回退到上一个commit节点,存在log记录
  • 6、切换到指定commit节点
  • 7、删除文件
  • 8、本地分支与远程分支相连
  • 9、Tag使用
  • 10、关于代码的比较
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档