Git的基本使用

在阐述Git命令行之前,首先来看下面的一张图:

Snip20210827_232.png

常见命令

  • git clone https://github.com/Liyanyan33/YYArrayLib YYArrayLib:从远程仓库中克隆工程到本地当前文件目录YYArrayLib中;
  • git status:查看本地文件的状态;
  • git add .:将本地所有修改的文件添加到暂存区;
  • git commit -m '提交说明':将暂存区的修改文件提交到本地仓库;
  • git push:将本地仓库中修改文件提交到远程仓库;
  • git pull:从远程仓库拉取代码到本地仓库,实现远程仓库与本地仓库的同步;
  • git branch:查看远程仓库的分支列表;

SourceTree设置iOS工程的忽略文件

*~
.DS_Store
UserInterfaceState.xcuserstate
xcschememanagement.plist
Pods
Podfile.lock
Breakpoints_v2.xcbkptlist
.gitignore
contents.xcworkspacedata
IDEWorkspaceChecks.plist
WorkspaceSettings.xcsettings
  • 操作如下所示:
image.png
Mac电脑经常出现Github官方网站访问不了的情况
  • 解决方案:在Mac系统文件/etc/hosts/中加入Github官方网站的ip地址;
  • 第一步:查询Github官方网站的ip地址,在ip地址网站中输入www.github.com,查询结果如下:
    image.png
  • 第二步:确定域名IP,点击这里,结果如下:
    image.png
  • 第三步:确定静态资源IP,点击这里,结果如下:
    image.png
  • 第四步:打开系统文件/etc/hosts/,由于此文件是只读的不能直接修改,可将其拷贝一份至桌面,然后双击打开,添加内容有如下:
# 140.82.112.4 github.com
# 199.232.69.194 github.global.ssl.fastly.net
# 185.199.108.153 assets-cdn.github.com
# 185.199.110.153 assets-cdn.github.com
# 185.199.111.153 assets-cdn.github.com

199.232.28.133 raw.githubusercontent.com
  • 第五步:将桌面上的hosts文件,替换系统的/etc/hosts/文件即可;

git在进行代码管理时遇到的问题及解决方案

  • 第一个问题:github提交代码出现报错:Support for password authentication was removed on August 13, 2021. Please use a personal access token instead

  • 第二个问题:Mac上SourceTree使用时,遇到remote: HTTP Basic: Access denied fatal: Authentication failed for 'xxx/'

    • 原因:账号的密码发生改变,导致无法访问远程仓库;
    • 解决方案:Mac上打开钥匙串,输入source,然后将钥匙串中之前存储的账密信息删除,然后在SourceTree中拉取远程仓库代码,会弹出重新登录账密的弹框,输入更改之后的账密即可,如下所示:
image.png
  • 第三个问题:创建忽略文件.gitignore,然后往忽略文件.gitignore中添加内容,最后想将忽略文件.gitignore提交到远程仓库,发现.gitignore文件不能git add到暂存区

    • 原因:忽略文件.gitignore本身就不在git版本管理范围之内,且添加到忽略文件.gitignore中其他文件,也不在git版本管理范围之内,现在要强制将目标文件,纳入git版本管理范围之内;
    • 解决方案:终端执行git add -f 目标文件
  • 第四个问题:已经纳入git版本管理范围之内的文件,现在要将其忽略,不再进行跟踪,即在以后的开发中忽略其修改,不再提交到git远程仓库

    • 解决方案:终端执行git update-index --assume-unchanged 目标文件,如果想要再恢复跟踪,再次纳入git版本管理,终端执行git update-index --no-assume-unchanged 目标文件
  • 第五个问题:已经推送push过的文件,想从Git远程库中删除,并在以后的提交中忽略,但是却还想在本地保留这个文件

    • 解决方案:终端执行git rm --cached 目标文件,然后提交到远程仓库,则远程仓库会删除目标文件;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容