Git入门全流程

1 篇文章 0 订阅

本文简单介绍了Linux系统中,Git的所有操作以及在EDA软件设计中经常使用的指令(加粗)


  • 初始化步骤:

1. git init (初始化): 初始化本地仓库,会自动在当前目录下生成一个.git目录

  • git init directory : 指定本地路径directory目录作为git仓库

1. git clone (克隆 初始化):将现有Git仓库中的项目拷贝下来(自动生成.git目录

  • git clone <repo> : 将repo仓库的代码克隆到当前路径中
  • git clone <repo> directory : 克隆到指定的目录directory中

<repo> : Git 仓库     directory:本地目录

  • 2022/10/26更新:

git clone仓库所有分支步骤:

  1. git clone xxxxxx.git      //克隆原始仓库,分支默认是master主分支,若想克隆特定分支,使用 git clone -b 分支名 xxxxxx.git
  2. git branch -a   //查看所有远程分支
  3. git checkout -b 本地分支名 origin/远程分支名  //切换到对应分支,且checkout远程分支
  4. git submodule update --init --recursive //更新所有子仓库
  5. git pull  //下拉代码

  • 2023/02/25更新:

git添加子模块:

  1. git submodule add xxxxxx.git  //添加子模块到本地,如需指定子模块位置,使用git submodule add xxxxxx.git 具体位置

git删除子模块

  1. git rm --cached xxxxxx // 删除子模块缓存
  2. rm -rf xxxxxx //删除子模块目录
  3. vim .gitmodules //删除.gitmodules中子模块对应的信息
  4. rm -rf .git/modules/xxxxxx //删除.git中的子模块目录
  5. vim .git/config //删除.git/config中子模块对应的信息

1. git config (配置信息):配置git信息

    编辑 git 配置文件:

  • git config -e    # 针对当前仓库
  • git config -e --global   # 针对系统上所有仓库

   设置提交代码时的用户信息:

  • git config --global user.name "name"
    git config --global user.email "email@xx.com"

如果去掉 --global 参数只对当前仓库有效


  • 基本操作(!!!重中之重!!!)

workspace:工作区
staging area:暂存区/缓存区
local repository:版本库或本地仓库
remote repository:远程仓库

常见flow:git pull / git fetch -> 修改 -> git status -> git add / git rm -> git commit -> git log -> git push

2.常见提交操作

git status    查看仓库当前的状态,显示有变更的文件

git diff    比较文件的不同,即暂存区和工作区的差异

git add    添加文件到暂存区

git rm    将文件从暂存区和工作区中删除

git commit    提交暂存区到本地仓库

2. 常见辅助操作:
git reset    回退版本

git mv    移动或重命名工作区文件

git log    查看历史提交记录
git blame <file>    以列表形式查看指定文件的历史修改记录

git remote    远程仓库操作
git fetch    从远程获取代码库
git pull    下载远程代码并合并
git push    上传远程代码并合并

  • 2022/12/14更新:

Github将密码凭证改为使用个人访问令牌(personal access token)

个人访问令牌:settings -> Developer settings -> personal access token -> Tokens(classic)创建,生成一串token,保存好,以后都看不到了。

git remote set-url origin https://<token>@github.com/github的用户名/仓库名称

然后可以正常的git push


  • 版本控制操作(Git精髓)

3.分支操作

git branch <branchName> (创建分支命令) + git checkout <branchName>(切换到对应分支)

git checkout -b <branchName> : 创建分支且切换到对应分支

git branch -d <branchName>:删除对应分支

3.合并分支操作

git merge <mergedBranch>:需要在合并的分支上,<mergedBranch>是被合并的分支(被删掉的),将<mergedBranch>合并进当前分支

  • !合并时会产生冲突:需要git diff 查看冲突的位置,手工修改后,再进行merge

  • 2023/08/03更新

如何更新GitHub Fork后的代码并与原始代码同步

1.使用以下命令,将更新的原始代码从主GitHub存储库中拉到我们的本地分支中,会将与Fork相比原始代码中的所有更改应用到本地主分支

git remote add upstream ropo.git //确认源项目地址
git fetch upstream //拉取源项目更改
git merge upstream/master //合并源项目的变更到fork后的项目

2.最后将本地主分支中最新的代码推送到Fork存储库:

git push origin master
  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潘鸿洋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值