CSDN CODE使用

来源:互联网 发布:mobi漫画制作软件 编辑:程序博客网 时间:2024/05/16 14:30

CSDN CODE版块使用GIT作为其代码托管引擎,类似于GitHub.比较适合于中国程序员使用。

CSDN CODE帮助文档
https://code.csdn.net/help/CSDN_Code/code_support/FAQ_2_4
https://code.csdn.net/help/CSDN_Code/code_support/new_Index

1.产生密钥
安装git客户端,在git shell执行
$ssh-keygen -t rsa -C "email地址"

把rsa_pub内容拷贝到CODE站点的本人的SSH公钥管理

2.$第一次 git push 失败
报错:
To git@code.csdn.net:xxx/xxx
![rejected]  master -> master (non-fast-forward)
error:failed to push some refs to 'git@code.csdn.net:xx/xxx'

解决办法:
$ git pull origin master
$ git add .
$ git commit
$ git push origin master

3.从远程仓库移除文件或目录.
--method1:
$ git rm filename
  --删除了本地文件
$ git commit -m "delete filename" (可包含多个,用空格分开)
  --提交到stage(cache)
$ git push
----->可以发现 要删文件已从仓库消失。

--method2:从仓库移除但保留在磁盘. 只能使得不再跟踪指定的文件或目录(在远程仓库还能看见,在某些情况下可能有用)
$ git rm --cache [filename]
git rm --cache bin/\*
git rm --cache target/\*

4.给仓库添加文件或目录.假设想增一个文件HadoopMonitor.jar到仓库。
$git add HadoopMonitor.jar
$git commit -m "add HadoopMonitor.jar"
$git push
-->可以发现 新增文件已在仓库。

5.修改文件(和添加文件所用命令一样)
$git add xxx
$git commit -m "change xxx"
$git push

6.放弃修改
1)放弃工作区修改:
 $git checkout -- file
2)放弃缓存区修改(回退):
 $git reset HEAD file
3)放弃已提交的修改:
 $git reset --hard fb68d23cd9032

7.分支branch
1)查看分支
git branch
2)创建分支
git branch <branchname>
3)切换分支
git checkout <branchname>
4)合并某分支到当前分支
git merge <branchname>
5) 删除分支
git branch -d <branchname>

8.checkout/clone仓库代码/项目
1)clone
$ git clone git@code.csdn.net:xxx/xxx
2)checkout 分支(branch) dev
$ git checkout -b dev origin/dev
然后若修改推送修改:
$git push origin <branch-name>
若推送失败 ,远程比你本地新,则git pull
$git pull origin dev
若提示没有tracking information.则本地分支和远程分支没关联,需执行:
git branch --set-upstream <branchname>  origin/branchname

9.标签Tag操作
1)删除本地标签
$git tag -d tagname
2)推送标签
$git push origin <tagname>
$git push origin --tags 推送全部标签
3)删除远程标签
$git tag -d tagname
$git push origin  :refs/tags/tagname

10.添加ignore(有些本地文件有用但不需要提交到远程仓库)

创建.gitignore 文件(位置与.git同级)
假设.开头的文件或目录都不commit,bin目录及其内容不commit,.class文件不commit
内容为
.*
bin
*.class
*.xml
然后执行
$ git add  -f  .gitignore
$ git commit -m "add .gitignore"
$ git push
这只对以后的文件有效,以前已经提交的应忽略文件还继续存在。


11.一个典型工作流程
假设某人li欲参与工程p1(创建者是admin),在dev1主分支上分出一个个人分支li。
1)git clone git@code.csdn.net:admin/p1.git
2)git checkout -b li  origin/li (创建分支)
3)git checkout li (切换到个人分支下工作)
4)做某些修改
5)git add
6)git commit -m "xxx"
7)git push origin li
再把dev1检出拿到其最新代码
8)git checkout dev1
9)git pull origin dev1
开始merge个人分支到主分支
10)git merge li //这时已切换在dev1分支下,因此是从li 合并到dev1
提交
11)git push origin dev1

查看提交历史:
git log

参考资料:
http://www.cnblogs.com/1-2-3/archive/2010/07/18/git-commands.html
http://blog.csdn.net/column/details/git-learning-note.html
http://www.cnblogs.com/baizx/archive/2010/08/09/1796120.html

0 0
原创粉丝点击