问题描述
新手如何快速上手学会Git Bash的使用
解决办法
- 输入命令ssh-keygen -t rsa -C “your.email.com” ,在本地生成本机器的公钥,-t表示生成的文件类型,-C表示生成注释。
- 在远程端添加该公钥到允许的公钥名单中。
- 若想把远程库的项目直接拉到本地,输入git clone git@github.com:xxx/xxx.git。
- 若想把本地的新项目推送到远程库,则需先在远程段建立一个空的同名库,
mkdir xxx.git
cd xxx.git
git init –bare
cd ..
chown -R git:git xxx.git (用户:用户组,-R为文件夹递归)
chmod 755 xxx.git - 然后在本地输入git add xxx,git commit -m “xxx”。如果是初次提交项目至服务器,输入git remote add origin git@github.com:xxx/xxx.git,即添加改远程库信息到本地,并把改远程库重命名为origin。git push origin master:master,即可推送成功。如果在push的时候提示需要先pull,则先git pull origin master,如果提示git无法pull仓库refusing to merge unrelated histories错误,是因为本地和远程是两个项目,需要合并项目,则输入git pull origin master –allow-unrelated-histories即可,然后push就可以了。
- git add添加的文件是所有你想提交的文件夹或文件,git commit是提交内容到本地仓库,并作一定注释,git push是推送本地仓库master分支(前者)内容到远程库origin master分支(后者)。
注意,git push origin master表示推送本地master(默认)到远程master分支,git push :master表示删除远程master分支,但本地master仍保留。一旦使用git push -u origin master,则下次使用git push或者git pull都不需要加origin master。 - 如果在Github添加key的时候出现key is already used的错误时,是因为一个key不能同时出现在不同的repository,需要在各个repository删除这个key,然后在个人设置中配置这个key,然后就可以访问该Github下所有repository。(该方法只适用于个人管理Gith,请谨慎操作!)
- 其它常用git命令:
git status 查看当前状态,哪些文件被修改,删除,哪些是新增文件。
git reset –hard head 表示版本退回到分支中head指针所在时间轴位置。
git log 查看提交日志。
git checkout xxx 若xxx是文件夹或文件,则表示撤销对这些文件夹或文件的修改,若xxx为分支名,则表示切换到xxx分支。