github学习笔记

1.添加ssh账户:

(1)点击账户头像后的下拉三角,选择settings--->SSH and GPG keys--->New SSH key,如下图:

(2)在ubuntu的命令行中,回到用户的主目录下(也可以不在主目录下),编辑文件.gitconfig

(3)修改为注册github时的邮箱,填写用户名。

(4)使用如下命令生成ssh密钥

         ssh-keygen -t rsa -C "邮箱地址"

 

(5)进入主目录下的.ssh文件件,下面有两个文件  

    公钥为id_rsa.pub,私钥为id_rsa

(6) 将公钥粘贴至git的SSH key页面中,即

2. 克隆项目

(1)git clone git@github.com:github用户名/仓库名

(2)克隆出错

(3)继续执行1中的命令就可成功复制仓库中的内容

(4)项目克隆到本地之后,执行如下命令创建分支

注意:创建一个新的分支后,若没有提交一个版本时,用git branch是显示不了有这个分支的,如上图

(5)推送分支,就是把该分支上的所有本地提交到远程库,推送时要指定本地分支,这样,git就会把该分支推送到远程库对应的远程分支上

          git push origin 分支名称

注意 此处可能遇到的问题

a. 报错fatal: does not appear to a git repository Could not read from remote repository

  本地库与远程库关联出现问题,解决方法如下

git remote rm origin # 删除remote中的内容
git remote -v  # 此时发现没有origin内容
# 通过以下命令重新建立关联
git remote add origin git@github.com:github名字/仓库名.gitb

b 错误二

原因:本地版本和主干上的有差异,可以先pull远端的版本,解决了冲突才能push(自己当时的问题是read.me文件改了)

git pull --rebase origin 本地分支

(6)将本地分支跟踪服务器分支
git branch --set-upstream-to=origin/远程分支名称 本地分支名称例:
例如: git branch --set-upstream-to=origin/yjf yjf

(6) 从远程分支上拉取代码
git pull orgin 分支名称
例:
git pull orgin yjf
使用上述命令会把远程分支smart上的代码下载并合并到本地所在分支
3.常用的命令 

我们把文件往git版本库里添加的时候,是分两步执行的:

第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;

第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

 

 (一)

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令   git checkout -- file

 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作

 场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交

 git reset --hard 版本号(可通过git log查看;git reflog可以查看我们的操作记录,得到版本号(一般用于原来终端关闭,打开新的终端时))

  git reset --hard HEAD^表示退回前面一个版本

(二)

命令git rm用于删除一个文件(git rm filename)。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本(git checkout – filename),你会丢失最近一次提交后你修改的内容

(三)

git管理的文件的修改,它只会提交暂存区的修改来创建版本。若编辑了一个文件,没经过git add而直接commit,当前分支是得不到这个工作区的修改内容的

(四)

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

(五)

修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,恢复工作现场。

原文地址:https://www.cnblogs.com/jj1106/p/11080158.html