需求
将本地项目(LikiantaProjects/AnyKey)通过Git Bash上传到Github,用于开源展示。
我的项目地址:https://github.com/Likianta/anykey
操作流程
1. 安装Git软件
下载地址:链接: https://pan.baidu.com/s/1jIINhbC 密码: d1gi
1.1. 第一次打开Git Bash。配置自己的身份:
git config --global user.name "Xiaoming"
git config --global user.email "xiaoming@qq.com"
1.2. 初始化代码库
在自己的本地工程目录下(比如我的是F:\Workspace\LikiantaProjects\AnyKey
)找个空白处右键 - Git Bash Here
,打开此路径下的Git Bash命令行。
执行创建仓库的操作:
git init
2. 注册Github账户
注册过程略。这里只说一下访问Github可能会遇到的问题。
Github虽然没有被墙,但有些人的访问速度却很慢。Windows用户通过修改hosts文件可以提高访问速度:
hosts文件位置:C:\Windows\System32\drivers\etc\
首先右键hosts文件,打开属性 - 安全选项卡,获取完全控制权限:
然后用记事本打开此文件,在末尾添加以下内容:
192.30.252.123 www.github.com
103.245.222.133 assets-cdn.github.com
185.31.18.133 avatars0.githubusercontent.com
185.31.19.133 avatars1.githubusercontent.com
(参考:国内github访问慢的解决方法 - 日月星陈 - 博客园 https://www.cnblogs.com/xmu-chenming/p/6034217.html,截止2017年11月28日测试有效)
保存关闭,重启浏览器即可。
注册成功后,记住自己的账号和密码,假设我的是“Xiaoming”,密码是“xm123456”。
3. 创建新项目
在Github中点击“Start a project”来创建一个新项目。如图所示:
创建完成后,点击“Clone or download”按钮,复制HTTPS格式的Git地址到剪切板:
比如我的是https://github.com/Likianta/anykey.git
4. 将Git克隆到本地
找到自己电脑上的本地项目的路径,比如我的是:F:\Workspace\LikiantaProjects\AnyKey
在空白处点击右键 - Git Bash Here
,从而在此工程路径下打开Git Bash:
在命令行中输入以下命令,将会把Github上的远程版本库克隆到本地:
git clone https://github.com/Likianta/anykey.git
不过不用担心远程文件会把本地的工程给冲掉,因为我们克隆得到的文件其实是在该目录下新出现的一个文件夹“anykey”中装着呢:
打开F:\Workspace\LikiantaProjects\AnyKey\anykey\
文件夹,里面有三个文件:LICENSE、README.md以及.gitignore文件(这是一个隐藏文件,需要打开“显示隐藏的项目”才能看到)。
将里面的所有文件剪切并粘贴到上一级目录,确认覆盖,这样我们的本地工程就与远程版本库建立连接了。
5. 开始第一次同步
以下命令在Git Bash命令行中输入:
- 添加本地所有文件
git add .
- 提交本地代码
git commit -m "First commit."
- 将提交的内容同步到远程版本库
git push origin master
此时会要求你输入你的Github账号和密码,输入正确后则开始同步。
同步成功后可以在你的Github项目主页看到上面的文件已经被更新。
6. Git Bash常用操作
添加 - 提交 - 同步:
git add . //一般来说add以后紧接着就去提交(commit)了,不过你也可以先攒下来几次add,然后一并提交
git commit -m "First commit." //提交必须要在引号中写点东西
git push origin master //首次需要输入Github账号和密码,以后就不用了
查看最近修改:
git status //查看整体变更(详细到文件名)
git diff //查看具体变更(详细到每行代码的增删)
git diff app/src/main/java/.../MainActivity.java //查看某个文件中的代码变更
git checkout //撤销所有还未add的修改
git log //查看历史记录
相关参考
- 郭霖《第一行代码 第二版》p489
- 国内github访问慢的解决方法 - 日月星陈 - 博客园 https://www.cnblogs.com/xmu-chenming/p/6034217.html