Git更新代码

Git更新代码第一步 如果分支 将此分支暂命名为 dev 有修改 则先提交修改的内容 如果没有 直接跳到第二步 gitcommit m fixbug 第二步 切换到 master 分支下 gitcheckoutm

大家好,欢迎来到IT知识分享网。

目录

1. 初次运行 Git 前的配置

用户信息

2. 拉取仓库代码

3. 提交代码

4. 版本回退

4.1 本地分支版本回退的方法

4.2 自己的远程分支版本回退的方法

4.3 区别:git checkout — file  与  git reset — file 命令

5. git restore 和 git restore –staged 的区别

5.1 git restore

5.2 git restore –staged

6. 本地关联远程分支

7. git submodule的简单介绍


1. 初次运行 Git 前的配置

查看所有的配置以及它们所在的文件:

git config --list --show-origin

用户信息

安装完 Git 之后,要做的第一件事就是设置你的用户名和邮件地址。 这一点很重要,因为每一个 Git 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:

$ git config --global user.name "John Doe" $ git config --global user.email 

再次强调,如果使用了 --global 选项,那么该命令只需要运行一次,因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global 选项的命令来配置。

pull/push免密设置

进入到自己的home目录,执行以下命令后,在.gitconfig文件中生成credential

git config --global credential.helper store

Git更新代码

 原理:凭证存储

在使用Git进行开发的时候,我们可以使用ssh方式或者http url方式来进行源码的clone/push/pull,如果你使用的是 SSH 方式连接远端,并且设置了一个没有口令的密钥,这样就可以在不输入用户名和密码的情况下安全地传输数据。 然而,这对 HTTP 协议来说是不可能的 —— 每一个连接都是需要用户名和密码的。

Git 拥有一个凭证系统来处理这个事情, Git 的选项:

  • 默认所有都不缓存。 每一次连接都会询问你的用户名和密码。
  • “cache”模式:会将凭证存放在内存中一段时间。 密码永远不会被存储在磁盘中,并且在15分钟后从内存中清除
  • “store” 模式:会将凭证用明文的形式存放在磁盘中,并且永不过期。 这意味着除非你修改了你在 Git 服务器上的密码,否则你永远不需要再次输入你的凭证信息。 这种方式的缺点是你的密码是用明文的方式存放在你的 home 目录下

2. 拉取仓库代码

  • 拉取Gitlab项目:git clone git@github.com:google/re2.git
  • 进行项目:cd re2/
  • 查看所有分支:git branch -a
  • 在本地创建和远程分支对应的分支,使用:
  • git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
  • 建立本地分支和远程分支的关联,使用:
  • git pull 拉取分支,更新分支内容
    git branch --set-upstream branch-name origin/branch-name  // the '--set-upstream' option is no longer supported git branch --set-upstream-to=origin/remote_branch your_branch

(删除远程jingjing分支:git push origin –delete jingjing)

3. 提交代码

git commit -m “fix bug”

git checkout master

git pull

扩展:强制拉取

git pull --force origin merge_code:merge_code git pull <远程主机名> <远程分支名>:<本地分支名>
1、将与本地当前分支同名的远程分支 拉取到 本地当前分支上(需先关联远程分支,方法见文章末尾) git pull 2、将远程指定分支 拉取到 本地当前分支上: git pull origin <远程分支名> 3、将远程指定分支 拉取到 本地指定分支上: git pull origin <远程分支名>:<本地分支名> 推荐使用第二种 

git checkout dev

git merge master

如果在合并的过程中,提示Test.java文件出现冲突了,手动修改一下这个文件,修改成自己想要内容;如果没有出现冲突,直接跳到第八步

git add email/Test.java

git commit -m “merge master”

git push origin dev

1.将本地当前分支 推送到 与本地当前分支同名的远程分支上(需先关联远程分支,方法见文章末尾) git push 2.将本地当前分支 推送到 与本地当前分支同名的远程分支上 git push origin <本地分支名> 3.将本地当前分支 推送到 远程指定分支上 git push origin <本地分支名>:<远程分支名> 推荐使用第二种

将本地分支的代码强制push到远程仓库对应的分支上

git push origin email_parser:email_parser –force

第九步:

在GitLab界面提交merge新请求

4. 版本回退

4.1 本地分支版本回退的方法

git reflog

接着回退版本:

git reset --hard Obfafd

0bfafd就是你要回退的版本的commit id的前面几位

4.2 自己的远程分支版本回退的方法

git reflog git reset --hard Obfafd

紧接着强制推送到远程分支:

git push -f git push origin dev:dev --force

注意:本地分支回滚后,版本将落后远程分支,必须使用强制推送覆盖远程分支,否则无法推送到远程分支

远程仓库版本回退方法–Git(二) – 知乎

4.3 区别:git checkout — file  与  git reset — file 命令

git checkout -- index.html 拉取暂存区文件 并将其替换成工作区文件

git checkout email/email_parser.cc email/server.cc 

5. git restore 和 git restore –staged 的区别

5.1 git restore

git restore <file> 

表示将在工作空间但是不在暂存区的文件撤销更改

5.2 git restore –staged

git restore --staged <file> 

作用是将暂存区的文件从暂存区撤出,但不会更改文件

6. 本地关联远程分支

git branch --set-upstream-to origin/merge_code

7. git submodule的简单介绍

        在软件开发过程中,通常我们会遇到有一些通用的部分希望抽取出来做成一个公共库的情况,比如安卓和IOS都通用的H5页面。而公共代码库的版本管理是个麻烦的事情。幸运的是,万能的Git有个叫子模组(git submodule)的命令完美地帮我们解决了这个问题。

        如runtime工程下的build_tools

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/122898.html

(0)
上一篇 2025-10-13 10:33
下一篇 2025-10-13 11:00

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信