Git常用命令和问题记录大全
2023-12-29 19:35:42
Git 常用命令
增加/删除文件
git add <file>
:将文件添加到暂存区。git rm <file>
:从暂存区删除文件。
代码提交
git commit -m "提交信息"
:将暂存区中的文件提交到本地仓库。
分支
git branch <branch_name>
:创建新的分支。git checkout <branch_name>
:切换到指定的分支。git merge <branch_name>
:将指定分支合并到当前分支。
标签
git tag <tag_name>
:为提交打上标签。git show <tag_name>
:查看标签的信息。
查看信息
git status
:查看当前的工作目录的状态。git log
:查看提交历史记录。git diff
:查看两个提交之间的差异。
远程同步
git remote add <remote_name> <remote_url>
:添加远程仓库。git push <remote_name> <branch_name>
:将本地分支推送到远程仓库。git pull <remote_name> <branch_name>
:从远程仓库拉取代码。
撤销
git reset HEAD~
:撤销最后一次提交。git reset --hard HEAD~
:强制撤销最后一次提交。
其他
git init
:初始化本地仓库。git clone <remote_url>
:克隆远程仓库。git help
:查看 Git 的帮助信息。
问题记录与解决
执行 git add
时出现:warning: LF will be replaced by CRLF
问题
在 Windows 系统上使用 Git 时,如果将文件从 Unix 系统复制到 Windows 系统,可能会出现此警告。这是因为 Windows 系统使用 CRLF 作为换行符,而 Unix 系统使用 LF 作为换行符。当 Git 将文件添加到暂存区时,它会将 CRLF 换行符转换为 LF 换行符。
解决方案:
您可以使用 git config --global core.autocrlf input
命令来解决此问题。此命令将告诉 Git 在提交文件之前将 CRLF 换行符转换为 LF 换行符。
执行 git push
时出现:fatal: Could not read from remote repository.
问题:
此错误通常是由于没有设置 SSH 密钥导致的。
解决方案:
您可以按照以下步骤设置 SSH 密钥:
- 打开 Git Bash。
- 运行
ssh-keygen -t rsa -b 4096 -C "your_email_address"
命令生成 SSH 密钥。 - 运行
cat ~/.ssh/id_rsa.pub
命令将公钥复制到剪贴板。 - 登录 GitHub 并转到“Settings”页面。
- 在“SSH and GPG keys”部分,单击“New SSH key”按钮。
- 将公钥粘贴到文本框中,然后单击“Add SSH key”按钮。
执行 git clone
时出现:fatal: unable to access 'remote_url': Could not resolve host
问题:
此错误通常是由于没有安装 SSH 客户机导致的。
解决方案:
您可以按照以下步骤安装 SSH 客户机:
- 在 Windows 系统上,您可以使用 PuTTY 或 Git for Windows。
- 在 Mac 系统上,您可以使用内置的 SSH 客户机。
- 在 Linux 系统上,您可以使用 OpenSSH。
安装 SSH 客户机后,您需要将 SSH 客户机的路径添加到环境变量中。
执行 git pull
时出现:error: Your local changes to the following files would be overwritten by merge: README.md
问题描述:
此错误通常是由于您在本地对文件进行了更改,而这些更改与远程仓库中的更改冲突导致的。
解决方案:
您可以按照以下步骤解决冲突:
- 运行
git stash
命令将本地更改暂存起来。 - 运行
git pull --rebase
命令将远程仓库中的更改合并到本地仓库。 - 运行
git stash pop
命令恢复本地更改。 - 手动解决冲突。
- 运行
git add <file>
命令将已解决冲突的文件添加到暂存区。 - 运行
git commit -m "提交信息"
命令提交更改。