git教程


csdn:Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!
csdn:Git操作教程-(全)

本地仓库

建立本地仓库

git init
git add  readme.txt
git commit -am "add readme balabala"

.gitignore 文件

git之.gitignore 文件详解

撤销修改

  1. 手动修改 然后 commit
  2. git reset --hard HEAD^
  3. commit之前使用 首先git status 然后 git checkout -- file

配置git用户名与邮箱

git config --global user.name "your name"
git config --global user.email "youremail@example.com"

--global 表示这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定的不同的用户名和邮箱

远程仓库

ssh

  1. 首先创建远程仓库账号,利用邮箱youremail@example.com 注册 github/gitee/gitcode 等网站账号。本地Git仓库和github仓库之间的传输是通过SSH加密的。
  2. 创建SSH Key :打开命令行,输入如下命令:
ssh-keygen -t rsa –C “youremail@example.com”

在用户主目录(C:\Users\Administrator\.ssh)中生成两个文件:

  • id_rsa:私钥,不能泄露出去,
  • id_rsa.pub:公钥,添加到远程仓库
  1. 设置ssh:登录github,打开” settings”–> SSH Keys,然后点击“Add SSH Key”,填上任意title,在Key文本框里粘贴 id_rsa.pub 文件里的内容。
  2. 回到控制台 输入一下指令
ssh -T git@gitcode.com

添加远程仓库

github网站上建立远程仓库

git remote add origin https://github.com/******/testgit.git
git push -u origin master 
  • origin是远程仓库的默认名字, 可以自自己改名
  • master是本地仓库主分支 , 可以自自己改名
  • 第一次推送 master 分支时,加上了 –u 参数 , Git 在把本地的 master 分支内容推送的远程新的 master 分支的同时 ,还会把本地的 master 分支和远程的 master 分支关联起来,在以后的推送或者拉取时就可以简化命令。

远程仓库管理

git remote :查看远程仓库信息
git remote -v :查看远程仓库详细信息

分支

分支管理命令

  1. git branch :查看本地分支
  2. ·git branch-a` :查看本地和远程所有分支
  3. git branch dev :创建dev分支,并保持在当前分支下
  4. git checkout dev :切换到dev分支下
  5. git checkout -b dev :创建dev分支并切换到dev支下
  6. git merge dev: 将dev分支合并到当前分支
  7. git branch -d dev :删除dev分支

推送分支到远程仓库

git push -u origin dev

拉取远程仓库中的分支

csdn:Git三种方法从远程仓库拉取指定的某一个分支

  • git clone -b <分支名称> \<url> :将指定的某一个远程分支拉取到本地,拉取的本地分支将自动和远程同名分支建立追踪关系,它不会将新创建的HEAD指向克隆仓库中HEAD指向的maser主分支,而是指向我们刚拉取下来的分支;

  • git fetch:先将远程的仓库克隆clone到本地,再执行git fetch命令将所有分支拉取到本地。该命令执行完以后还是处在master主分支的,再执行git checkout命令切换到想要的分支。

  • git checkout -b <本地分支名称> origin/<远程分支名称>
    详见参考

远程仓库中含有第三方依赖库

git 从 github clone 时如果仓库代码有第三方依赖库 或者 分支 可以 使用 git clone https:\github.com**** ***.git --recursive 来下载

如果 clone 结束后第三方依赖包未下载全,可以进入 clone 的文件夹 使用 git submodule update --recursive 命令再次下载第三方依赖库

Error

git pull error: ** files would be overwritten by merge


git pull 报错 error: Your local changes to the following files would be overwritten by merge

有两种处理方式:

1. git stash 保存本地代码到 git 栈中

利用git stash 保存本地代码到 git 栈中,然后决定恢复或者删除

   git stash  
   git pull origin master  
   git stash pop 

git stash :备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到 Git 栈中。

git pull: pull 服务器上的代码;

git stash pop: 从 Git 栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个 Stash 的内容 , 所以用栈来管理 ,pop 会从最近的一个 stash 中读取内容并恢复。

git stash list: 显示 Git 栈内的所有备份,可以利用这个列表来决定从那个地方恢复。

git stash clear: 清空 Git 栈,此时使用gitg等图形化工具会发现,原来 stash 的哪些节点都消失了。

2. 不保存,直接删掉本地版本 然后git pull

git reset --hard 
git pull origin master

​# clone
[git clone —recursive 快速高效下载方法](https://zhuanlan.zhihu.com/p/361136073)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值