git技术github仓库

一、git是什么
git是开源分布式的版本控制技术
github是一个利用git技术的开源托管平台

代码托管平台:github,码云,gitlab等

区分:git和github关系

分布式(git),集中式(SVN)

分布式:没有中心,可以在本地独立完成,不依赖其他服务器
集中式:必须有一个核心服务器,如果核心服务坏掉,那整体网瘫痪
二、git具体怎么玩?
1.先安装一个git软件(也称git控制台)

windows git软件下载地址:https://git-scm.com/download/win
2.检测是否安装好git

右侧–查看一下是否有git bash
3.创建一个项目文件夹,例如:1906pro

4.进入项目文件夹,输入git init 进行git初始化

5.就可以在git的世界尽情玩起来

window命令方式查看文件:dir
清屏:cls

mac查看文件:ls -al 查看隐藏文件
清屏:clear
三、git文件管理命令
查看文件状态:git status
将文件添加到暂存区:git add 目录名或要添加的文件名
将暂存区的内容提交:git commit -m ‘提交说明’

如果查看提交信息:git log或git reflog

git日志简化,在一行显示:git log --pretty=oneline

如果首次安装git,使用时需要配置git用户名和git邮箱

配置用户名: git config --global user.name ‘你的用户名’
配置邮箱:git config --global user.email ‘你的用户名’

查看配置信息:git config --list
注意:git管理的不是文件,管理的是”修改“

===========================================

如何将本地仓库文件提交到远程仓库

以github为例演示,如何将本地项目上传到远程仓库

1.注册github帐号

 sign up 注册
 sign in 登录

2.登录并创建远程仓库

点击登录后右上角的+号,选择new repo按照提示创建远程仓库

3.在本地生成公钥和密钥 ssh ************

ssh-keygen -t rsa -b 4096 -C “your_email@example.com”

一路敲回车,然后在用户目录下的.ssh中生成两个文件:

 id_rsa: 密钥
 id_rsa.pub:公钥,

  将公钥文件复制到远程仓库的ssh中步骤:

  第一步:复制本地生成的id_rsa.pub里面的内容(一定要全选,不能敲空格)
  第二步:打开github并登录,找到用户名中的settings--->ssh and GpG keys--->点击new SSH keys

  第三步:将复制的id_rsa.pub里面的内容粘贴到第二步的key中,title随意

  第四小:点击 add ssh按钮完成

4.连接远程

添加远程:  git remote add origin 添加远程仓库地址

远程地址格式:git@github.com:用户名/仓库名.git

例如:git@github.com:w3cteching/xcx_project.git


查看本地是否有远程连接信息:git remote -v

5.推送本地代码到远程

git push  推上去  本地-->远程

git push origin master -u

拒绝,报错:解决方案

git pull 拉下来   远程-->本地

git pull origin master (如果不行,继续往下)

git fetch origin //获取远程所有分支

git rebase origin/master

==============================

从远程到本地:[推荐]

git clone git@github.com:w3cteching/suyuhao_project.git

一、git上的watch,star,fork的区别
二、git提交时忽略不必要的文件

.gitignore添加不必要提交的文件

三、git历史管理
命令:git reset --hard commit_id
说明:可以通过git reset 回退到以前的某个版本,也可以恢复到现在的某个版本

所谓版本:即用git commit一次就是一个版本

查看commit_id: git reflog

1.放弃工作区的修改:git checkout – 要放弃修改的文件名

2.放弃暂存区的修改:

第一步:先将暂存区的文件回退到工作区

   git reset HEAD 要回退的文件

第二步:到工作区,再用git checkouit放弃修改

  git checkout -- 要放弃修改的文件名

3.回退分支版本:git reset --hard commit_id

四、git分支管理
默认git仓库只有一个master主分支

master:通常用于发布产品的分支

dev:开发分支

bug:修复bug的分支

feature:添加新功能的分支

分支常用命令:
1.查看分支:git branch
注:分支前面带*表示是当前分支

2.创建分支:git branch 分支名
3.切换分支:git checkout 要切换的分支名

  1. 创建并自动切换到创建的分支上: git checkout -b 新分支

5.合并分支

git merge 要合并的分支名
出现冲突的场景:合并的分支和被合并的分支,都有修改,这时就会出现冲突

如果出现冲突:通常是手动解决 采用当前: 采用外来 两者都要

提交本地分支到远程:git push origin 要提交的本地分支

删除本地分支:

  已合并:git branch -d 要删除的分支

  未合并:git branch -D 要删除的分支

删除远程分支:

 git push origin :要删除的远程分支名

添加当前分支与远程的跟踪:例如:当前分支是dev

格式: git branch --set-upstream-to=origin/远程分支名

例如: git branch --set-upstream-to=origin/dev
五、tag管理:即项目发布的版本管理 例如:v1.0.0 v1.2.1
version定义规则

主版本号:表示项目的重大架构变更

次版本号:表示较大范围的功能添加和变化

增量版本号:一般表示重大bug修复

例如:: 0.0.1
查看tag: git tag

添加tag;git tag tag名称

例如:git tag v0.0.1

给指定的commit_id添加版本:git tag tag名称 commit_id

例如:git tag v0.2.0 00921af
删除tag: git tag -d 删除的tag名

推送tag到远程:git push origin 本地tag名

删除远程tag:git push origin :本地tag名

六、git协作开发
协作开发分两种形式:

1.国际化开发:主要利用pull Request请求,代码讨论,审核,最后由负责人合并请求代码

大致步骤:
第一步:先找到开源项目并fork到自己的仓库
第二步:将form到自己仓库的开源项目克隆到本地

    git clone git@github.com:w3cteching/d2-crud.git

 第三步:修改克隆的代码(即参与贡献代码)

 第四步:提交到远程仓库

 第五步:发布pull Request请求,添加修改建议的标题和说明文字

自有组织开发:公司内部:

1.创建公司项目远程仓库

2.添加项目协作者

下边的操作都是其他组员的操作:

3.克隆项目 git clone git@github.com:w3cteching/xcx_project.git

4.本地操作添加代码并add,commit

5.提交

    git pull或
    git fetch origin  从线上摘取最新代码

    切换到当前分支上  yaojie_dingdan

    然后合并最新dev代码到当前分支:
       git rebase origin/dev 或
       git pull origin origin/dev 

    git push origin yaojie


    组长: git fetch origin  从线上摘取所有分支最新代码

    通过git merge 合并其他组员的分支到dev和master和组员提交的分支

6.最后
git push origin master

git push origin dev

    保持master和dev永远是最新的代码

注意:如果git push不上去,

git branch --set-upstream-to…
分支笔记补充:

拉取远程分支到本地并合并:

 git fetch origin 拉取所有远程分支信息

 git branch 只查看本地分支
 git branch -r 查看远程分支
 git branch -a 查看所有分支(包括本地和远程分支)
 
 例如:想在本地dev分支上合并远程的master(或远程小组成员的分支)上的信息
 git checkout dev //先切换到当前分支

 git merge origin/master  //再合并远程的master分支到dev

测试远程连接是否成功:ssh -T git@github.com

如果测试成功会显示:Hi 远程帐号名! You’ve successfully authenticated,

添加和删除远程地址:

添加远程仓库地址:git remote add origin 远程仓库地址

删除远程地址: git remote rm origin
设置远程推送的默认跟踪:git push 远程地址 要推送的分支 -u

其中:-u 代表默认远程跟踪,下次可以直接输入 git push 回车
如何用可视化工具来操作git(即不用命令,用软件操作)
git图形化软件:(git GUI)

git GUI
sourcetree: https://www.cnblogs.com/fisherbook/p/11397168.html
webstorm:代码编辑器 内置集成git

vs code:操作git
通常在公司中用命令为主,可视化为辅助(或结合两者的优势来使用)

七、使用github制作静态网站
适用场景:

1.可以充当小型的个人博客网站(当然是免费哦,不用买空间和域名)

2.你可以把自己想写的推送上去,供其他人浏览

3…
如何利用github制作静态网站呢????

主要通过git pages来实现静态网站

第一步:找到要生成静态网站的仓库 例如:w3cteching/xcx_project
第二步:打开这个仓库的settings–>GitHub Pages
第三步:有两种实现静态网站的方式:

第一种:项目方式

   source:【推荐】

    选择用master主分支创建静态网站

    选择用master分支下的docs/创建静态网站  【推荐】

    无论哪种方式,都会生成一个可访问的网站:
    
    Your site is ready to be published at http://用户名.github.io/仓库名/.

第二种:公司组织方式:类似于企业官网

创建一个新仓库:仓库名必须是: 用户名.github.io (用户名就是你登录的账号名)

 Theme Chooser:主题

八、使用码云来管理项目

https://rogerdudler.github.io/git-guide/index.zh.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值