当前位置:网站首页 > C++编程 > 正文

git clone 和git checkout区别(git checkout和git checkout -b)





从https://git-for-windows.github.io下载,然后正常安装即可。

 
    

完成账号创建

 
    

有时候开发需要连接不同的git,账号可能会不同,可以单独设置当前仓库的用户名和密码。

打开git bash,通过命令进入需要创建版本库的文件夹,输入命令:

 
    

在git bash中通过git add命令将文件夹内文件添加至版本库,add命令有很多参数,具体可在网上找到,以下命令可将所有文件添加到版本库:

 
    

在git bash中通过git commit命令将add的文件提交到版本库,完成版本更新。命令如下:

 
    

引号内为本次commit标记。

提交后修改commit描述:

 
    

在完成了本地库的创建后,可将本地库同步至github。

在git bash中输入:

 
    

填写完名字后记住:不要勾选 “Initialize this repository with a README”,勾选了其实也没事,就是麻烦一些,网上可以找到解决方案。

 
    

完成关联

 
    

克隆

 
    

从关联的远程仓库获取到本地

 
    

从本地上传到关联的远程仓库

 
    

比较本地与远程仓库的区别

 
    

https://github.com/github/gitignore上有各种项目的忽略文件模板。

 
    

由于需要创建.gitignore文件,而windows上无法直接创建无文件名的文件,可以借助git bash创建,也可以使用touch创建文件。

 
    

注意:.gitignore需放在与.git文件夹同级的目录下;而非.git下

各种工程的gitignore文件参考:https://github.com/github/gitignore/

删除跟踪文件,有时候发现这个文件不需要再跟踪了:

 
    
 
    

在实际使用过程中遇到一个很坑爹的事情:我在A分支创建了一个文件,然后切换回master分支,发现master分支也出现了这个文件;按我的理解,在哪个分支创建的文件只属于某一分支,不应该出现在其他分支的。在网上找到了一个解释:《新建的文件没有纳入版本管理,所以会被带到切换的分支》。新建的文件是个普通文件,并不属于某一分支,所以在任何分支都能看到。所以记住:添加文件后记得立马commit一下。

 
    

有时候本地commit后,发现有修改的文件未加进去,不想两次commit,则可以删除前一次commit后,再次add commit:

 
    
 
    

几个区:

    1. 工作区,当前在编辑的内容
    1. 暂存区,git add后的区
    1. 本地版本库,git commit后的区
    1. 本地远程分支,git push、git fetch、git pull 都会经过本地远程分支区,是本地版本库和远程版本库的桥梁
    1. 远程版本库,在服务器上的版本库
 
    
 
    
 
    
 
    
 
    

团队协作时,通常有多个维护一个项目。每次提交前,需拉取远程仓库的修改,合并到本地后,再提交到远程仓库。

在这里插入图片描述

  • git fetch 拉取远程仓库修改记录到本地仓库
  • git merge 本地仓库合并到工作目录
  • git commit 工作目录提交到本地仓库
  • git push 本地仓库提交到远程仓库
    1. git stash 隐藏本地修改
    1. git pull 拉取远程修改(或 git fetch + git merge)
    1. git stash pop stash@{id} 恢复隐藏的本地修改

git stash

  • 隐藏git stash save “save xxx”
  • 查看 git stash list
  • 恢复git stash pop stash@{0}

在linux上经常因为文件权限修改后,git status会爆红,忽略的方法:

 
    

可能遇到的错误:

  1. 如何解决failed to push some refs to git,与github同步后,添加了remark文件但未同步至本地时会出现此错误。
    先输入如下命令,将数据同步到本地,再将本地数据同步到github就不会有问题了。

 
    
  1. Unlink of file ‘.git/objects/pack/pack-*.pack’ failed. Should I try again? (y/n)
    是因为文件被占用了,关闭占用即可

到此这篇git clone 和git checkout区别(git checkout和git checkout -b)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • can通讯功能(can 通讯)2026-04-29 08:00:04
  • c加加编程入门程序(c加加编程软件哪个好)2026-04-29 08:00:04
  • exam.nowcoder试题(exam.nowcoder试题C)2026-04-29 08:00:04
  • dbf文件怎么转换成excel(dbf文件怎么转换成wps)2026-04-29 08:00:04
  • console是控制台吗(控制台console在哪里)2026-04-29 08:00:04
  • CPU参数对比(AMD)(CPU参数对比网站)2026-04-29 08:00:04
  • apc和pc的区别(apc和pc能对接吗)2026-04-29 08:00:04
  • 预训练模型下载(预训练模型下载moco)2026-04-29 08:00:04
  • 消息认证码mac值(消息认证码mac全称)2026-04-29 08:00:04
  • plc1500下位组件错误(plc显示下位组件错误)2026-04-29 08:00:04
  • 全屏图片