1. 安装配置与代码同步
step1:安装git客户端
sudo apt-get update
sudo apt-get install git
step2: 配置github
git config --global user.name "Your Name"
git config --global user.email "youremail@domain.com"
step3: 创建公钥
ssh-keygen -C 'you email address@gmail.com' -t rsa
这会在 用户目录 ~/.ssh/ 下建立相应的密钥文件
step4: 上传公钥
在 github.com 的界面中 选择右上角的 Account Settings,然后选择 SSH Public Keys ,选择新加。
Title 可以随便命名,Key 的内容拷贝自 ~/.ssh/id_rsa.pub 中的内容,完成后,可以再使用
生成成功后用记事本打开id_rsa.pub,得到ssh key公钥,请注意这里一定要保证无格式粘贴,否则github会报错。
step5:测试一下
ssh -v git@github.com
进行测试。看到下面的信息表示验证成功。
…
Exit status 1
step6: 在本地项目目录里打开终端
step7:初始化目录
git init
step8: 新增文件到git
git add .
注意后面的 . 表示当前目录.没有提示信息就是好的提示信息,但没有说明git 也不会返回提示信息
–
step 9:提交所有文件
git commit -m "Initial Commit" -a
m表示message , -a 表示所有
如果你要提交的不是整个项目文件,而是特定文件,可以使用:
git commit -m "Initial Commit" file
file 为指定文件
step 10: 在github上创建一个repository
并复制URL
step 11: 提交到git的项目
git remote add origin ssh://yoursshurl
yoursshurl 为你新创的repository 的url
step12: 提交你的代码
git push origin master
3. 常见问题
1、RT ! [rejected] master -> master (fetch first)
在push远程服务器的时候发现出现此错误;原因是没有同步远程的master
所以我们需要先同步一下
git pull origin master
在执行这段代码的过程中,ubutun可能会跳入一个vim/nano编辑文件,这个文件无需编辑,你直接根据文件下面的提示栏目ctrl+C退出编辑就可以了
当然,你还可以选择在其他分支里上传代码(切换分支见第4节)
2、 git commit 过程中Changes not staged for commit
需要先git add 后在commit 然后 push
整个流程:
$ git add menudd
其中 menudd 是一个目录 也可以是文件 会自动更新有修改的文件
然后
$ git commit -m "asdf"
“asdf”是更新注释
最后
$ git push origin master
完成
3. fatal: remote origin already exists.
在执行
$ git remote add origin https://url
错误提示:
fatal: remote origin already exists.
解决办法:
$ git remote rm origin
然后在执行:
$ git remote add origin https://url
就不会报错误了
4. error:failed to push som refs to…….
$ git push origin master
错误提示:error:failed to push som refs to.......
解决办法:先把远程服务器github上面的文件拉先来,再push 上去
$ git pull origin master
5. 解决冲突和创建分支
查看所有分支
git branch -a
创建新的分支 develop
git checkout -b develop
切换到master分支
git checkout master
切换到bra分支
git checkout bra
查看所在分支
git branch
合并分支
git merge develop --no-ff
4. Git 常用命令
1.创建一个新的repository:
先在github上创建并写好相关名字,描述。
$cd ~/coredump
$git init //初始化
$git add . //把所有文件加入到索引(不想把所有文件加入,可以用gitignore或add 具体文件)
$git commit //提交到本地仓库,然后会填写更新日志( -m “更新日志”也可)
$git remote add origin https://URL //增加到remote
$git push origin master //push到github上
2.更新项目(新加了文件):
$cd ~/coredump
$git add . //这样可以自动判断新加了哪些文件,或者手动加入文件名字
$git commit //提交到本地仓库
$git push origin master //不是新创建的,不用再add 到remote上了
3.更新项目(没新加文件,只有删除或者修改文件):
$cd ~/coredump
$git commit -a //记录删除或修改了哪些文件
$git push origin master //提交到github
4.忽略一些文件,比如*.o等,然后就可以git add . 能自动过滤这种文件
$cd ~/coredump
$vim .gitignore //把文件类型加入到.gitignore中,保存
5.clone代码到本地:
$git clone https://URL
假如本地已经存在了代码,而仓库里有更新,把更改的合并到本地的项目:
$git fetch origin //获取远程更新
$git merge origin/master //把更新的内容合并到本地分支
6.撤销
$git reset
7.删除
$git rm * // 不是用rm
5. 参考
http://www.cnblogs.com/specter45/p/github.html
http://blog.csdn.net/small_rice_/article/details/45095323