git---github(代码片段)

crazysheldon1 crazysheldon1     2023-03-14     594

关键词:

Git基础

什么是git?

git是一个版本控制系统,也可以说当你的代码发生变化进行管理的工具.在git出现之前这样的工具SVN,CVS.

git和github的区别,

简单来说,git是一个版本控制的工具,github是一个代码托管平台,一个代码仓库.

用git管理项目

首先进入项目目录,启动git--->Git Bash Here,这样就开启了git管理系统启动了一个git图形界面,执行 $ git init . 初始化,在项目中便形成了一个.git的目录 然后通过一系列命令进行版本控制。

注意:项目内容在没有被管理的时候status为红色,被管理后为绿色!

#开始管理项目(基础3步走)

git init .    #首先初始化,生成 .git目录

git add .      #将整个项目管理起来

git commit -m  "项目01版本"  #"项目的01版本"当然执行的时候可能会报错,需要配置下git config 

"""
执行这两条命令配置邮箱和名称
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
"""

 

git分区

工作区: 项目中当前的编辑位置.

缓存区:git add 之后的区域,将文件放在缓存区.

版本库:commit之后的区域就是版本库.

git常用命令

git init .        # 初始化
git add .      # 将工作区的所有文件添加到缓存区
git commit -m “提交信息”   #将缓存区的内容添加到版本库,注意:"提交信息"写的越详细越好!方便后期管理
git status                           #查看当前的状态

git reset --hard  hash值     #回退到指定的版本,这里的hash值就是每次commit的时候都会生成一个类似md5值的字符串,例如 "9d2aaf3ea89a9e6b8d8050a6d1a730f6bb4a0d85"

git checkout -- file(指定文件)        # 将文件回滚到最近一次提交的样子    该命令比较危险在不确认文件用途的时候慎用!!!


git log                          # 查看当前位置之前的提交记录
git log -p 文件       #指定版本库的区别
git log pretty=online     #将commit过的值 版本库信息全部显示
git log --pretty="format:%an %h %T %ar"   #格式化显示版本库信息  例如%an  作者名称  %h 用户简短hash值 %ar修订日期 %T树状显示

git reflog                      #查看所有的记录(只要提交过的记录就能查到)

git reset HEAD file      # 将文件从缓存区拉取到工作区

git diff     对比文件                # 对比工作区和缓存区
git diff --cached    对比文件      # 对比版本库和缓存区

 

git-快照

git stash    #将当前内容创建一个快照,并回到最后一次提交的位置,前提是有改变的情况下
git stash list  #查看快照列表

git stash pop  回到快照位置,并删除这个快照  相当于以下两条命令集合
git stash apply   #回到快照
git stash drop    #删除快照

 

git-分支

分支的作用就是用于团队协同开发,这样代码就会出现较大分歧。这时候就需要用到分支了,不同的任务组在不同的分支上开发,互相之间不会影响。git分支的特性和BUG修改都在不同的分支上进行开发和测试。这样规范了整个软件的开发流程。分支之间的互不影响这种特性可以增加团队合作的效率。GIT分支的另外一个重要特性就是可以合并不同软件仓库(fork)的分支。

注意点:一般来说禁止在master分支上修改,因为master为线上代码,一旦出现问题,会产生严重的后果.基本上在dev分支上修改

#分支的常用命令
git branch  name   #创建一个分支
git branch             #查看分支列表
git checkout name   #切换分支
git branch -d name   #删除指定分支

git checkout -b name   #在当前分支的基础上 创建并切换一个分支

git merge master bug    #将这两个分支合并

 

冲突

#下面这种情况就表示出现了冲突
Auto-merging templates/car.html
CONFLICT (content): Merge conflict in templates/car.html
Automatic merge failed; fix conflicts and then commit the result.

<<<<<<< HEAD
    <li>兰博基尼2/3</li>
=======
    <li>兰博基尼1/2</li>
>>>>>>> dev1

Auto-merging templates/car.html
CONFLICT (content): Merge conflict in templates/car.html
The stash entry is kept in case you need it again.

 
<<<<<<< Updated upstream
<li>奇瑞瑞虎7</li>
=======
<li>奇瑞瑞虎</li>
>>>>>>> Stashed changes

#分支和dev1同时改动同一个文件相同的地方,合并的时候git无法处理,产生冲突,需要人为解决
#创建快照之前,将li标签改为奇瑞瑞虎,当创建快照后然后在将li标签改为奇瑞瑞虎7,当执行删除快照 git stash pop 的时候就会产生冲突,需要手动选择解决

 

Github托管代码

将代码上传github

1.先创建一个仓库,选择公开和私有随意.

#上传操作
git remote add origin https://github.com/liuxiaofei1071/shop.git     #将自己github url地址重命名为origin  
git push origin master   #此时上传master分支代码到github的coco仓库 ,如果没登录Github就需要进行登录

 

2.这样只能上传master分支,如果是多分支的话

git push origin dev   #传dev分支到github

git push origin dev1   #传dev分支到github

 

将从github代码拉取到本地

1.进入对应仓库,如我的 liuxiaofei1010/shop,点击Clone or download按钮,复制github上的项目url,在git中执行对应的命令

#相关git命令
git clone github的url      #该命令就可以将代码从github上拉取下来,但是仅限于master分支

#拉取其他分支代码
git checkout -b dev origin/dev   #拉取dev分支
git checkout -b dev1 origin/dev1  #拉取dev1分支

 

两台机器分别更改github代码

#公司pc
git pull origin dev1    #将dev1分支代码同步到机器dev1分支
#修改后
git push origin dev1   #将本地dev1分支代码同步到github的dev分支

#home-pc
操作同上..

 

 

 

 

 

 ...待续

qtcreator中使用git/github(代码片段)

Github是目前最流行的代码仓库,通过 QtCreator 可以很方便的访问 Github,下面来看看如何配置。1、下载并安装git首先安装 Git(msysGit) 最新版是2.10.0下载地址 http://git-scm.com/downloads或者 https://git-scm.com/downloads/win这里下载... 查看详情

git----github上传本地文件到git(代码片段)

...git库克隆一份保存到本地gitclonexxxxxxx示例:gitclonehttps://github.com/Lucky-Syw/practice.git//此链接的获取见下图   执行到此步骤,可以看到已经将远 查看详情

text清除git/github存储库历史的步骤(代码片段)

查看详情

windows下git+github(代码片段)

windows下git+github#表示注释()表示应当填写的内容由括号里面的话做出说明1、在GitHub上创建对应仓库?就是repository,创建2、本地仓库配置?接下来我们回到gitbash的命令窗口,由于我们是在文件夹上右键打开的,因此已经定位到该文件... 查看详情

git报错failedtopushsomerefsto'git@github.com:markprint/github.git'(代码片段)

 这个不知名小错误用了我两天的空余时间mmp  就是这里报的错输入gitpushoriginmaster-f解释为:   远程分支上存在本地分支中不存在的提交,往往是多人协作开发过程中遇到的问题,可以先fetch再merge,也就是pull,... 查看详情

git/github第一次提交和再次添加文件(代码片段)

文章目录git提交指令git提交指令gitinitgitadd.#将当前文件添加到.git文件中gitcommit-m"firstcommit"gitbranch-Mmaingitremoteaddoriginhttps://github.com/jucway/java-UDP-.gitgitpush-uoriginmain添加文件将之前的仓库pull下来之后合并之后在提交gitp 查看详情

git---github(代码片段)

...变化进行管理的工具.在git出现之前这样的工具SVN,CVS.git和github的区别,简单来说,git是一个版本控制的工具,github是一个代码托管平台,一个代码仓库.用git管理项目首先进入项目目录,启动git--->GitBashHere,这样就开启了git管理系统启... 查看详情

我是怎么自学git/github的?(代码片段)

大家好我是鱼皮,Git和GitHub是如今团队协作开发必不可少的技能,且不说程序员,就连很多产品也在学习它们。今天分享一下我自学Git和GitHub的经验,希望起到一个导学的作用,帮助大家抓住重点,节省时... 查看详情

解决gitpush报错:failedtopushsomerefsto‘git@github.com:anightmonarch/javaeasygoing.git‘(代码片段)

1、报错日志在向github远程仓库推送本地代码时,出现以下报错:error:failedtopushsomerefsto'git@github.com:anightmonarch/JavaEasyGoing.git'2、分析解决经查阅资料了解到出现这个错误的原因是因为远程仓库和本地仓库不一致导... 查看详情

解决gitpush报错:failedtopushsomerefsto‘git@github.com:anightmonarch/javaeasygoing.git‘(代码片段)

1、报错日志在向github远程仓库推送本地代码时,出现以下报错:error:failedtopushsomerefsto'git@github.com:anightmonarch/JavaEasyGoing.git'2、分析解决经查阅资料了解到出现这个错误的原因是因为远程仓库和本地仓库不一致导... 查看详情

git学习git+github+gitee+idea集成+git服务器搭建(代码片段)

目录版本控制什么是版本控制常见的版本控制工具版本控制分类Git与SVN的主要区别聊聊Git的历史Git环境配置软件下载启动Git常用的Linux命令Git配置设置用户名与邮箱(用户标识,必要)Git基本理论(重要)三个... 查看详情

git/github第一次提交和再次添加文件(代码片段)

...gitcommit-m"firstcommit"gitbranch-Mmaingitremoteaddoriginhttps://github.com/jucway/java-UDP-.gitgitpush-uoriginmain添加文件将之前的仓库pull下来之后合并之后在提交gitpullhttps://github.com/jucway/...git出现错误1:已解决error:failedtopushsomerefsto‘https://gi... 查看详情

git——git的简单介绍(代码片段)

官方网站Git官网 https://git-scm.com/GitHubhttps://github.comGitLabhttps://about.gitlab.com/SVNhttps://subversion.apache.org 老师课程廖雪峰老师的Git教程关于Git的博客教程苏玲老师的玩转GIt三剑客视频教程,涉及Git,GitHub,GitLab,可以边看边学... 查看详情

git&github--曾经遇到的问题的记录(代码片段)

git和github相信大家都很熟悉,在使用的过程中难免会出现一些问题,更何况我这样的经常换设备以及虚拟机的用户,经常会遇到git的各种问题,下面简单记录一下曾经出现过的问题以及解决的方法,可能部分解决的方法不是很正... 查看详情

git的安装部署及使用(代码片段)

一、Git环境部署及使用1.Git/GitHub/GitLabGit:目前最先进的分布式版本控制系统GitHub:全球最大的面向开源及私有软件项目的托管平台,免费注册并且可以免费托管开源代码。GitLab与GitHub类似,也是属于第三方基于Git开发的产品,不... 查看详情

git的安装部署及使用(代码片段)

一、Git环境部署及使用1.Git/GitHub/GitLabGit:目前最先进的分布式版本控制系统GitHub:全球最大的面向开源及私有软件项目的托管平台,免费注册并且可以免费托管开源代码。GitLab与GitHub类似,也是属于第三方基于Git开发的产品,不... 查看详情

gitlab搭建与基本使用(代码片段)

一、git、github、gitlab的区别Git是版本控制系统,Github是在线的基于Git的代码托管服务。GitHub是2008年由RubyonRails编写而成。GitHub同时提供付费账户和免费账户。这两种账户都可以创建公开的代码仓库,只有付费账户可以创建私有的... 查看详情

前端项目下载git://github.com遇到的问题处理(代码片段)

...感觉一样,真巧,能在这么恰当的时间遇到坑。GitHub2021年9月1日的通知:ImprovingGitprotocolsecurityonGitHub通知中有一个逐步改变的计划,在2022年1月11日& 查看详情