前言
仅以此文记录使用Git的心得体会以及经验。
配置
以下步骤按时间先后顺序进行:
1. 本地
- 下载:https://git-for-windows.github.io/
提示:按默认设置安装完毕,完成后会自动打开一个如下窗口,视为安装成功。或者点击开始菜单-git-git Bash也能打开该窗口。 - 设置git用户名和密码:
$ git config --global user.name “Name” $ git config --global user.email “xxx@hotmail.com” - 创建本机的ssh key:
$ ssh-keygen -t rsa -C “xxx@hotmail.com” 输入后一路回车,直到显示 ”the key’s randomart image is:" 表示生成成功 其中,某一行为 "Your public key has been saved in“ 后接某文件路径。此为SSH key文件所在文件夹的路径。打开文件夹并打开 ”id_rsa.pub"文件,复制其内容
2. github
- 打开github页面,Setting >> SSH and GPG keys >> New SSH key 进入SSH Key设置页面, 在key栏中粘贴刚刚复制的内容,然后保存。
- 在github中创建仓库 “repository”, 创建成功后得到其git地址。
3. 本地 & github
- 在本地新建一个文件夹,和github仓库名称一致。
选中本地仓库文件夹,右键选择git Bash打开git命令窗口。使用git init命令初始化,在本地工作区中创建一个git隐藏目录。 - 使用以下命令将它们关联,如果这一过程中未出现报错则视为操作成功:
" git remote add origin ’github仓库的git地址’"
提交代码
从本地仓库向github远程仓库提交代码:
git有一个工作区和暂存区。工作区就是我们在电脑上看见的文件夹,工作区有一个隐藏的目录.git,这个是版本库。 版本库中分为暂存区和master分支。 提交代码的时候,我们需要先将工作区的代码提交到暂存区,再从暂存区同步到master分支。
- 使用git add命令将本地工作区的文件添加待提交的文件:
$ git add . git add .表示一次性添加文件夹中的所有文件,如果针对某一文件进行添加可使用 “ git add '文件名‘ ” - 使用git commit命令将添加的文件提交到暂存区:
$ git commit -m “提交描述” - 使用git push origin master同步到github远程仓库。
$ git push origin master
常用命令
命令 | 作用 |
---|
git branch | 显示所有本地分支 (初始化时只有一个master分支) | git branch -d | 删除本地分支 | git init | 初始化本地版本库 | rm -rf .git | 删除 .git 文件夹 |
常见问题
此处总结使用git过程中可能出现的常见问题:
Q: 出现 ”fatal: Not a git repository (or any of the parent directories): .git“ A: 出现这个问题是因为未使用git init命令对本地工作区进行初始化,本地工作区没有.git隐藏文件。
Q: 使用git push命令时,会出现如下警告: The authenticity of host ‘github.com (xx.xx.xx.xx)’ can’t be established.RSA key fingerprint is xx.xx.xx.xx.xx. Are you sure you want to continue connecting (yes/no)? A: 这是github的安全验证,直接输入yes即可,下次就不会有提示了。
Q: 使用git push命令时, 出现 “error: src refspec master does not match any. error: failed to push some refs to …" A: 该信息代表暂存区没有待提交的文件,很有可能是你忘记在此之前使用git add & git commit命令将文件提交到暂存区。
Q: 出现 ”fatal: refusing to merge unrelated histories“ A: 对出现此报错的相应的命令后加 '–allow-unrelated-histories’
Q: 出现 ”Updates were rejected because the tip of your current branch is behind“ A: 远程和本地版本冲突。需要先pull,再push。
参考
写本文时曾参考以下文章:
- 配置:
用git提交代码到github的完整步骤. - git相关命令
Git 操作——如何删除本地分支和远程分支 GIT篇之如何删除本地仓库? - 可能存在的问题:
解决Git中fatal: refusing to merge unrelated histories. 解决Git中fatal: refusing to merge unrelated histories 解决git提交失败: Updates were rejected because the tip of your current branch is behind
|