Neeo

github使用笔记

注意:

1、如果是公司的项目,别往GitHub里面提交啊,除非是你公司自己搭建的托管,Gitlab

2、git命令只能在  .git文件路径下执行

工欲善必先利其器,先不讲怎么使用,咱先把客户端和线上仓库搞好,再说具体操作

 github客户端下载安装

GitHub客户端下载

本人用客户端,百度封不封不知道。。。。

链接:http://pan.baidu.com/s/1b46nZg 密码:bhzt

 下载到本地,然后选择好安装位置,一路next。。。

本地安装完成,先不运行


OK,咱们开始搞线上的GitHub远程仓库

去GitHub官网登录到自己的账户下

GitHub官网

没有账户的话,就去注册吧,接下来,

点击 Start a project 创建一个项目

 

 


客户端也搞好了,接下来,咱们就开始具体操作了:

建立一test文件夹

并在文件夹内创建一个text.py 文件,编写两行代码

 

然后当前目录下鼠标右键点击

# Git Bash Here

打开客户端,执行初始化

  # git init

# 下面会用到,在这里可以先把用户名和密码的事情解决了
git config --global user.email \'输入可用的用邮箱\'   #global为,全局配置,还可换成,local 本地配置

git config --global user.name \'输入可用的用户名
强势插入:用户名和邮箱

 

注意,在此目录执行的初始化之后,不能再子目录或其他目录执行这个客户端了

然后查看当前状态

  # git status

红色文件表示有改动没有提交到版本库的分支

 

那么接下来,我们进行创建第一个版本版本

  # git add .

  # git commit -m \'test版本初始版稳定版1.0\'

注意,到这一步可能会报错,那就是

提示让你输入用户名和邮箱

我们就按照提示输入自己的用户和邮箱就行了

git config --global user.email \'输入可用的用邮箱\'   #global为,全局配置,还可换成,local 本地配置

git config --global user.name \'输入可用的用户名\'

输入成功继续执行

 git commit -m \'初始化版本

\'

 

ok ,项目的第一个版本就OK了,查看版本一会说

我们继续编写代码,第二个版本编写好了

我们再在主目录的终端执行:git status,GitHub会自动检测代码变动,我们再执行git add .  和 git commit \'test项目稳定版2.0\',在每次创建编写前后我们尽量执行git status,来查看当前工作区是否是干净的

 

执行

  # git log  #查看版本记录

  # git reflog #查看所有的版本记录

我们继续编写代码,准备上线

突然,我们发现一个严重的Bug,需要回滚到之前的版本进行处理修改

那么,首先将当前工作区域内容提交到暂存区

  # git stash

补充:

stash相关常用命令:

  • git stash             将当前工作区所有修改过的内容存储到“某个地方”,将工作区还原到当前版本未修改过的状态
  • git stash list        查看“某个地方”存储的所有记录
  • git stash clear     清空“某个地方”
  • git stash pop       将第一个记录从“某个地方”重新拿到工作区(可能有冲突)
  • git stash apply     编号, 将指定编号记录从“某个地方”重新拿到工作区(可能有冲突) 
  • git stash drop      编号,删除指定编号的记录

 然后回滚到之前的版本进行修复bug,

  # git reset --hard 版本号

 

经过紧张的修复,bug消除,我们继续回来编写代码

  # git stash pop

 

good,由于我们在之前准备回滚时,执行 git stash 的时候并没有执行添加版本那两条代码,哦,还记得那两条代码吗?git add .  和 git commit -m \'xxxxx\' ,么没有执行git staurs查看

造成现在的pop时GitHub无法判断,在合并时出现冲突,这时候,就会在代码中标注起来冲突的位置,解决办法,

1、手动清除冲突

 2、多查看,保持工作区的干净

我们在这里手动解决冲突,别担心,这种冲突很常见的

进过紧张的筹备,我们的项目准备上线了

我们必须保证上线版本的稳定,极少的bug,

然后我们继续开发后续功能,还要应急处理线上版本的bug,怎么办呢,GitHub给我们提供了,分支功能

接下来我们创建GitHub分支

一般的,

  • master  #GitHub默认分支,我们把这个版本当成稳定版本,或者你随意
  • dev  #我们建立的开发版本,用来后续的持续开发
  • review #调校版本,这个版本交给你们老大看看你的low代码,
  • bug  #处理应急bug,名字随意

接下来,我们 创建分支并拷贝一份当前分支的代码到新分支

   # git bracnh dev

branch相关常用命令:

  • git branch 分支名称             创建分支
  • git checkout 分支名称          切换分支
  • git branch -m 分支名称        创建并切换到指定分支
  • git branch                          查看所有分支
  • git branch -d 分支名称         删除分支
  • git merge 分支名称              将指定分支合并到当前分支

进入dev分支进行开发

切换分支

 # git checkout dev

 我们在开发版本里尽情的写bug吧,哈哈哈

然后,继续生成版本,然后,切换到master分支,进行合并

  # git checkout master

  # git merge dev  #master分支合并dev分支的代码

这样,我们master分支的稳定版就升级了,注意,在合并的时候可能会有冲突,不过,我们手动解决冲突


 

bug写的好,要分享给世界人民看,so,我们开始往远程仓库托管我们的代码

  # git remote add origin  https://github.com/WZSwang/test.git  #还记得这个https么,创建远程仓库时的地址

  # git push origin master  #t往远程仓库提交你的分支代码

上传完毕,就是这样的

当我们从别的电脑,或者合作开发的同志需要继续写这段代码,那就在别的终端执行

  # git clone https://github.com/WZSwang/test.git

这样,远程仓库的代码就下载到自己的本地了,编辑完继续push提交,这里注意冲突问题


 

注意,在提交时可能会有问题,那就是在提交的时候,会让你输入用户名和密码,有的命令行输入,有的,就下面的弹窗,输入正确之后,才能上传

 

为了解决重复输入密码问题,

 在终端输入

  # ssh-keygen -t rsa 一路确定

然后切换到用户目录查看

  # cd ~/.ssh

  # ls

注意:id_rsa为私钥,id_rsa.pub为公钥,我们手打开公钥文件,将公钥拷贝到GitHub里

 

然后我们在终端,输入

  # git add remote origin git@github.com:WZSwang/test.git

然后上传和下拉代码的时候,我们执行

  # git push origin master

  # git pull origin master

注意,

1、别名可以自定义

2、git push origin master可以分两个步骤写

  git fetch origin master

  git merge origin/master == git rebase oigin/master

 

 


 

OK,上传和下拉我们说完了, 接下来,说点别的

忽略文件:有时候,我们在做版本控制的时候,要忽略某些文件或某个文件夹

那么,我们在终端根目录,

创建一个 .gitignore文件,编辑这个文件

  # git config --global core.excludesfile ~/.gitignore_globa     # 这个是全局的,根据需求来写

  # touch .gitignore  # 创建文件

  # vim .gitignore # 编辑忽略文件

常用的有:

  • a.*  #以a开头的所有文件
  • test/[abc].py  #test文件夹下的a or b or c
  • [abc]    #a或b或c
  • test/*   #test文件夹下的所有文件
  • !test/a.py   #test文件夹的除了a.py的所有文件
  • .idea/*  #忽略 .idea文件夹下的所有文件
  • *.pyc #忽略以 .pyc 结尾的所有文件
  • *.excel  #忽略以 .excel 结尾的所有文件

 


 

再说点别的

协同开发:

方式一,拉人

想要和谁一起,就把他拉进来,他拿到你这个项目的地址,就可以在这个仓库提交代码了,然后也可以把他踢走

方式二,搞个组织

先点击

new organization

step1、给组织输入个名字,邮箱啊,等填完之后 create organization 提交

step2、邀请成员  #可以跳过,后续再邀

step3、对这个组织进行设置,如这个组织有规模,用途,可以跳过这个步骤

然后,这个组织就建好了,就可以玩了

 

 

 

 

 


 

身为大神,怎么能不给那些菜鸟们改一些bug,或者给别人贡献一些代码,那么

首先搜索这个项目名,点击进去:

然后 fork一下他

 

 你自己的仓库里就有了这个项目了,你可以下载到本地进行操作,也可以在这直接写,create new file,然后写自己的代码,写完点击commit new file 进行提交,这样,在对方的终端就会提示,有一个新的消息,至于人家采纳不采纳你的代码,那就是另一回事了

 

 


 

 

 

 

暂时就这些

参考博客

 

分类:

技术点:

相关文章:

  • 2021-12-01
  • 2021-07-24
  • 2021-11-21
  • 2021-11-21
猜你喜欢
  • 2021-08-06
  • 2021-04-07
  • 2021-09-13
  • 2022-12-23
  • 2021-10-10
  • 2021-07-31
  • 2021-04-23
相关资源
相似解决方案