Git-速查

[复制链接]
发表于 2025-10-26 04:49:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
Git

安装 Git 之后,你可以…
设置全局用户信息(保举)


  • 全局设置,创建本地堆栈时默认分支名称为 main(你须要什么名称就该什么名称)【保举设置为 main 】
  1. git config --global init.defaultBranch main
复制代码

  • 全局设置,用户名和电子邮箱所在(比如:“张三”、“[email protected]”)
  1. git config --global user.name "名字"
复制代码
  1. git config --global user.email "电子邮箱地址"
复制代码

  • 查察是否设置乐成
  1. git config user.name
复制代码
  1. git config user.email
复制代码
创建本地堆栈(必须)


  • 为当前文件夹的内容,创建本地堆栈
  1. git init
复制代码

  • 对默认的分支名称不满足,可通过下面下令重定名
  1. git branch -m 新的分支名称
复制代码

  • 插一句嘴,假如你须要重定名其他分支,而非当前分支,可实行下面下令
  1. git branch -m 老的分支名称 新的分支名称
复制代码
局部用户信息(可选)


  • 局部设置,本地堆栈的用户名和电子邮箱所在(优先从局部设置读取,而非利用全局设置)
  1. git config user.name
  2. "名字"
复制代码
  1. git config user.email
  2. "电子邮箱所在"
复制代码

  • 查察是否设置乐成
  1. git config user.name
复制代码
  1. git config user.email
复制代码
利用本地堆栈(保举)


  • branch 干系
  1. # 查看分支(列出本地仓库中所有的分支,并且当前所在的分支会被标注出来)
  2. git branch
  3. # 显示简略的分支信息(比如:每个分支的最新提交哈希值)
  4. git branch -v
  5. # 显示详细的分支信息(比如:远程跟踪分支)
  6. git branch -vv
  7. # 切换到指定的分支
  8. git checkout 分支名称
  9. # 创建并切换到一个新分支
  10. git checkout -b 新分支名称
  11. # 尝试删除分支(自动检查分支是否已经合并,没有合并将删除失败)
  12. git branch -d 分支名称
  13. # 强制删除分支
  14. git branch -D 分支名称
  15. # 将xxx分支合并进当前分支(假如当前分支是main,要xxx分支并入main里面)
  16. git merge xxx
  17. # 解决合并冲突
  18. (1)查看冲突文件:        git status
  19. (2)编辑冲突文件:  手动编辑内容,将冲突的内容进行修改
  20. (3)重新执行添加:        git add 文件名
  21. (4)然后执行提交:        git commit -m "这里写你本次提交的备注内容"
复制代码

  • add 干系
  1. # 将所有文件添加到"待提交区"
  2. git add .
  3. # 将某个文件(password.txt)添加到"待提交区"
  4. git add password.txt
复制代码
  1. # 从"待提交区"撤回刚才添加的所有文件
  2. git reset
  3. # 从"待提交区"撤回刚才添加的某一个文件(password.txt)
  4. git reset password.txt
复制代码

  • status 干系
  1. # 显示工作目录和暂存区的状态
  2. git status
复制代码

  • commit 干系
  1. # 将"代提交区"里面的东西,提交到本地仓库里面
  2. git commit -m "这里写你本次提交的备注内容"
  3. # 不写参数,Git 会自动打开默认的文本编辑器供你输入多行提交信息
  4. git commit
复制代码
  1. # 撤回刚才提交到"本地仓库"的东西
  2. (1)撤回最近一次的提交,并让已修改的文件回到"待提交区"(即:回到commit的前一刻)
  3. git reset --soft HEAD^
  4. (2)撤回最近一次的提交,只保存文件的修改状态,"待提交区"没有任何内容(即:回到add的前一刻)
  5. git reset HEAD^
  6. (3)撤回最近一次的提交,不保存文件的修改状态,"待提交区"也没有任何内容(即:回到文件没有修改过的状态)
  7. git reset --hard HEAD^
  8. (4)撤销某个特定的历史提交而不是最近的一次提交
  9. 例如:要撤销某一个特定的提交,假设其哈希值为 abc123
  10. git revert 会创建一个新的提交,该提交的内容正好抵消指定提交所做的更改,而不会直接删除历史记录
  11. git revert abc1234
复制代码
  1. 温馨提醒:
  2. 在Git中,用 HEAD 表示当前版本;
  3. 上一个版本就是HEAD^,上上一个版本就是HEAD^^,上一百个版本可以简写为HEAD^100
  4. 或者
  5. 上一个版本就是HEAD~,上上一个版本就是HEAD~~,上一百个版本可以简写为HEAD~100
  6. 区别是
  7. [HEAD^5表示退一步到第五个父提交上,HEAD~5表示连续退五步到第五个父提交上]
复制代码
Github

与 Github 创建毗连

接下来将利用 ssh 方式举行毗连,(Github官网)不保举利用 https 方式

  • 切换到用户目次
  1. cd ~
复制代码

  • 制作用于包管数据传输安全的密钥(实行下面下令后,出现问答提示,不绝按回车键即可)
  1. ssh-keygen -t rsa -C "电子邮箱地址"
复制代码

  • 实行下面下令,将会输出密钥内容,复制它
  1. type ~/.ssh/id_rsa.pub
复制代码

  • 打开 Github 网站:https://www.github.com
  • 点击右上角的个人头像,点击 Settings,点击 SSH and GPG keys ,在 SSH keys 菜单内里,填写好 Title 后,将密钥粘贴到 Key 那里。
创建长途堆栈


  • 点击右上角的个人头像,点击 Your Repositories,点击 New 创建你的长途堆栈
  • 在 Repository name 那里填写堆栈名称,假如你想要给这个堆栈添加一些分析,在 Description (optional) 那里填写即可
  • 假如选择 Public,堆栈将被公开,全部人可见;假如选择 Private,堆栈将被设置为私有,只有你本身可见
  • 其他设置,可根据你的须要举行设置,不须要的话,直接点击最下方的 Create repository 即可
  • 点击 SSH,可以看到一个链接:[email protected]:用户名/长途堆栈名称.git,复制它
毗连长途堆栈


  • 添加一个长途堆栈,给它定名为 origin(你可以改为其他名字)而它的路径所在,就粘贴你刚才复制的链接
  1. git remote add origin [email protected]:用户名/远程仓库名称.git
复制代码

  • 查察长途堆栈(确保长途堆栈已经精确添加)
  1. # 查看名称为 origin 的远程仓库的路径地址
  2. git remote get-url origin
  3. # 查看所有的远程仓库
  4. git remote -v
复制代码
推送和拉取


  • 推送
  1. 假设
  2. “本地仓库”当有两个分支:main、test,当前分支为 test
  3. “远程仓库”的分支名称为 main、develop
  4. “远程仓库”被命名为 cangku
  5. # 将本地仓库的test分支上传到cangku的main分支(即:test => main)
  6. git push cangku test:main
  7. # 将本地仓库的main分支上传到cangku的develop分支(即:main => develop)
  8. git push cangku main:develop
  9. # 将本地仓库的main分支上传到cangku的main分支(即:main => main)
  10. git push cangku main:main
  11. 或者简写
  12. git push cangku main
  13. # 注意:上传指令的执行与当前是什么分支无关
复制代码

  • 设置与查察 “长途跟踪分支”
  1. 远程跟踪分支(也称为"上游分支")是 Git 中一个非常有用的功能
  2. 远程跟踪分支,是本地仓库中对远程分支的引用
  3. # 设置"远程跟踪分支"的三种方法
  4. # (1) 普通设置
  5. git branch --set-upstream-to=远程仓库名/远程分支名 本地分支名
  6. # (2) 推送+设置
  7. git push --set-upstream 远程仓库名 本地分支:远程分支
  8. 或者简写为
  9. git push -u 远程仓库名 本地分支:远程分支
  10. # (3) 拉取+设置(注意:下面的命令将作用于你当前所在的本地分支)
  11. git pull --set-upstream 远程仓库名 远程分支名
  12. # 注意:设置"远程跟踪分支"之后,你以后可以直接使用 git push 和 git pull
  13. 而不需要每次都指定远程仓库和分支名称,git会自动知道你的本地分支对应的远程分支
  14. # 查看"远程跟踪分支"的信息
  15. git branch -vv
复制代码

  • 拉取
  1. # 从远程仓库获取所有远程分支的更新,并呈现内容的变化,但不会修改你的工作目录(也就是不合并)
  2. git fetch 远程仓库名
  3. # 从远程仓库获取某个远程分支的更新,并呈现内容的变化,但不会修改你的工作目录
  4. git fetch 远程仓库名 远程分支
  5. # 注意:无论你当前在哪个本地分支上,git fetch 只会获取相应的远程分支的最新信息,并更新相应的远程跟踪分支,但不会修改你的工作目录(也就是不合并)
复制代码
  1. # 从远程仓库获取最新的更改,并将这些更改合并到“你当前所在的本地分支”(注意:只能是当前分支,无法更改)
  2. git pull 远程仓库名 远程分支
  3. 温馨提示
  4.         git pull 是 git fetch 和 git merge 的组合
  5. 假设
  6.         “本地仓库”当有两个分支:main、test,当前分支为 main
  7.         “远程仓库”的分支名称为 main、develop
  8.         “远程仓库”被命名为 cangku
  9. 需求
  10.         将cangku中的develop分支合并到本地test分支上
  11. 方法一
  12. # (1)切换到本地test分支上
  13. git checkout test
  14. # (2)从远程仓库获取develop分支的最新更改,并合并到当前test分支上
  15. git pull cangku develop       
  16. 方法二
  17. # 切换到本地test分支上
  18. git checkout test
  19. # 更新所有"远程跟踪分支"(如cangku/main、cangku/develop)但不会修改你的工作目录或当前分支
  20. git fetch cangku
  21. # 将"远程跟踪分支" cangku/develop 的更改合并到当前test分支上
  22. git merge cangku/develop
  23. # 小提示:远程跟踪分支是本地仓库中对远程分支的引用。它们通常以 cangku/develop 的形式存在。远程跟踪分支用于跟踪远程分支的状态,帮助你了解远程分支的最新提交情况。
复制代码
Other


  • 假如你利用 VS Code,可借助 git 干系的插件来进步你的工作服从(比如:Git Graph)
  • 假如你只须要托管到 Github 平台,可实行利用 Github Desktop 图形工具
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表