GIT 实际工作使用

GIT 实际工作使用

Git本地有三个工作区域:Working Directory、Stage/Index、Repository /Git Directory

只针对 本地操作 远程仓库和分支 不进行操作因为权限问题

1、准备阶段

git --version

1、清除所有配置

git config --global --unset user.name “你的名字”
git config --global --unset user.email “你的邮箱”

2、配置新的配置

git config --global user.name “your name”

git config --global user.email “youremail”

3、查看配置

//查看已配置的信息
git config --local 只对某个仓库有效
git config --global 对当前用户的所有仓库有效
git config --system 对系统所有登录的用户有效

//查看当前所有的config的配置,加 --list
git config --list --local
git config --list --global
git config --list --system

3、生成github、gitee的key

ssh-keygen -t rsa -C “youremail@qq.com” -f “id_rsa_github”

ssh-keygen -t rsa -C “youremail@qq.com” -f “id_rsa_gitee”

文件位置:/Users/zhangbx/.ssh/id_rsa.pub

4、测试与git的连接

ssh -T git@github.com

ssh -T git@gitee.com

Hi Coisini! You’ve successfully authenticated, but GITEE.COM does not provide shell access.

2、拉代码

1、初始化

mkdir 文件夹

cd 文件夹

git init

2、拉取master代码

git clone https://gitee.com/xxxx/xxxx.git

3、拉取指定分支的代码

git clone -b fenzhiname https://gitee.com/xxxx/xxxx.git

3、上传代码

1、准备动作

git branch 查看本地分支

git branch -a 查看远程分支

git remote add origin http://xxxx/xxxx.git (添加连接 可不用)

2、添加上传文件

git add . //上传所有改动过的文件
git add filename //上传制定文件
git add * //上传该目录下的所有文件

3、删除上传文件

git rm --f filename //删除指定文件
git rm --cached filename //停止跟踪文件但是不删除

4、查看文件状态

git status //查看状态
git diff //查看变更过的内容

5、撤销文件

git reset --hard HEAD //撤销工作目录中所有未提交文件的修改内容
git checkout HEAD filename //撤销指定的未提交文件的修改内容
git revert //撤销指定的提交

6、git commit -m"备注"

7、远程是否有新的提交

git pull --rebase

8、没有直接push

git push

4、发生冲突

两种方式 rebase

1、git pull --rebase:down代码到本地。重定位到没有冲突的节点;本地此节点之后的commit代码都被暂时取消。
2、解决冲突。
发生冲突的文件会被红色感叹号标记;发送冲突的代码会用>>、==、<<符号记录。通过删除冲突代码解决冲突。
3、提交文件。
git add 修改冲突后的文件。
4、继续rebase。
git rebase --continue。合并分支的节点继续前移,直到下一个冲突节点,然后重复2、3步骤继续解决冲突,直到解决所有冲突。
5、完成rebase。
解决所有冲突后,被暂时取消commit的代码将自动重新恢复conmmit状态。
6、git push。重新提交代码。

git rebase --continue:继续解决冲突。
git rebase --skip:跳过这一次的本地的有冲突的commit。
git rebase --abort:放弃rebase,恢复到之前状态。
git stash:将当前暂存或未暂存(没有commit)的代码储藏起来。
git stash pop:将储藏的代码释放。

<<<<<<<<<<<<<< Head
This is master.
==========
This is develop.
>>>>>>>>>>>>> Develop
以下为例,上半部分是master分支的修改,下半部分是develop分支的修改,删除develop部分,保留上半部分即可。
git stash //本地修改暂存
git pull
git stash pop//还原暂存
Updated upstream 和=====之间的内容为拉取下来的代码
=====和stashed changes之间的内容就为本地修改的代码
git stash clear // 清除暂存
git merge master //合并主分支
git status -uno //查看当前状态
git add . //再提交

第二种 、merge

5、切换分支

git checkout xxx 切换分支

git pull 拉取代码

git branch --set-upstream-to=origin/2023.03.23 2023.03.23 配置跟踪

git checkout -b xxx 创建并切换到该分支

git branch -d xxx 删除分支

6、合并分支

还没有操作过–下面是百度

git merge //合并指定到当前分支,将自己版本合并到master分支下
git rebase //合并指定到当前分支,覆盖的操作

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值