Welcome Guest! To enable all features please Login or Register.
Options
View
Go to last post Go to first unread
Offline Jaben  
#1 Posted : Wednesday, September 4, 2013 10:50:30 AM(UTC)
Jaben


Rank: YAF Developer

Reputation:

Medals: Medal of Honor Key: Given to pillars of the community who are key players in the YAF community and project.YAF.NET Supporter: Loves YAF.NET!YAF.NET Supporter: Supports our efforts. Thank you.Medal of Honor for the Support King: Given to a community member who tirelessly answers tons of support questions.

Joined: 10/9/2004(UTC)
Posts: 2,549
Location: United States

Thanks: 142 times
Was thanked: 358 time(s) in 199 post(s)
Access to the YAF.NET Source Repositories is now on GitHub: https://github.com/YAFNET

YAF.NET Build Server is available here with the latest binaries: http://build.yetanotherforum.net
thanks 2 users thanked Jaben for this useful post.
Zero2Cool on 9/4/2013(UTC), tirion on 9/6/2013(UTC)
Sponsor
Offline tirion  
#2 Posted : Friday, September 6, 2013 12:06:48 PM(UTC)
tirion


Rank: YAF Forumling

Reputation:

Joined: 8/31/2013(UTC)
Posts: 7

Thanks: 6 times
Originally Posted by: Jaben Go to Quoted Post
Access to the YAF.NET Source Repositories is now on GitHub: https://github.com/YAFNET

YAF.NET Build Server is available here with the latest binaries: http://build.yetanotherforum.net


Jaben,

I want to see if I can help with development of the forum - I will definitely be adding some features for my own purposes as I'll be starting another instance of YAF.

But to be sure that my development is compatible with what you guys are doing and that I will be able to issue pull requests I wanted to ask few things:

1. How exactly are you publishing forum to certain environment? By using TeamCity? Do you have any resource I can read for more information on the topic?

2. Why are .config files tracked / in repo? Meaning - now that I've changed .config files for my local dev env I obviously can't send that commit to master. How do you guys deal with those files? You have local .gitignore?

Also my Visual Studio heavily modified .csproj files - do you use some other IDE? Or Visual Studio 2012?

Thanks in advance for your help.
Offline squirrel  
#3 Posted : Friday, September 6, 2013 1:32:25 PM(UTC)
squirrel


Rank: YAF Leader

Reputation:

Medals: YAF.NET Supporter: Loves YAF.NET!YAF.NET Supporter: Supports the YAF.NET project with a contribution.YAF.NET Purple Supporter: Purple heart for being an Asset to the YAF.NET Community.YAF.NET Supporter: Supports our efforts. Thank you.Medal of Honor for the Support King: A huge help to the YAF.NET community!

Joined: 1/14/2010(UTC)
Posts: 925

Thanks: 251 times
Was thanked: 170 time(s) in 161 post(s)
.config files are tracked in repo because the application needs a base set of config files for installation. Customization beyond that point is up to the user.

As far as I know, YAF is currently developed using VisualStudio 2010. That's what I use for any changes. There have been known to be minor errors in the repository as to what files are referenced in the project and which ones are not.

With compiling, there is no real 'target environment'. To compile YAF, you run a 'publish' against the "YetAnotherForum.NET" project within the solution. That will build all DLLS and create the uploadable package for a webserver.


To make changes to YAF and submit them:

Setup a subversion client on your machine and create a local repository - this will get you a snapshot of the current source. TortoiseSVN is a good client. It can be setup to continually check YAF source and has a good merge utility.
Any changes you wish to submit to YAF will need to be submitted as a pull request - the devs will evaluate the code and include it into the repository as needed. YAF currently does not allow 'unrestricted' contribution to the source. It has to go through a pull request and be added by a developer.

Depending on the nature of your upgrades/enhancements - there is the chance that a fork could be created - that would be a development team decision.

Edited by user Friday, September 6, 2013 1:44:21 PM(UTC)  | Reason: Multiple topic updates to include detail.

If you can't find it using the forum search, try my signature link -- searches this site using Google: Google is my Friend
thanks 2 users thanked squirrel for this useful post.
tirion on 9/6/2013(UTC), painer94 on 3/20/2014(UTC)
Offline tirion  
#4 Posted : Friday, September 6, 2013 1:47:13 PM(UTC)
tirion


Rank: YAF Forumling

Reputation:

Joined: 8/31/2013(UTC)
Posts: 7

Thanks: 6 times
I've already downloaded the source using Git - will use that for source control rather than SVN. And I've already compiled the solution, got my local instance running. I am quite experienced dev (been developing ASP.NET websites since .NET 1.1) so I know the basics - however, I am puzzled as to how you do "advanced stuff" I mentioned:

1. Publish builds automatically (I doubt you are doing that manually as it is boring & time consuming process).

2. Related to #1 - how do you merge changes considering different devs are working on repo (I've saw Jaben, Ingo and vzrus have commited in last 15 days). I'm asking this since just opening project in my Visual Studio 2010 changed .csproject and now I can pull changes without stashing/committing.

I am just asking for more info because from what you are telling here (and from what I've read so far) - majority of stuff needs to be done manually (like if I needed to create pull request now I would need to juggle bunch of stuff for couple hours just to do it). And I doubt that's how things are done as it is both boring & time consuming - so just want to be 100% sure.

Thanks for the help!

Edited by user Friday, September 6, 2013 1:50:27 PM(UTC)  | Reason: Not specified

Offline squirrel  
#5 Posted : Friday, September 6, 2013 2:17:38 PM(UTC)
squirrel


Rank: YAF Leader

Reputation:

Medals: YAF.NET Supporter: Loves YAF.NET!YAF.NET Supporter: Supports the YAF.NET project with a contribution.YAF.NET Purple Supporter: Purple heart for being an Asset to the YAF.NET Community.YAF.NET Supporter: Supports our efforts. Thank you.Medal of Honor for the Support King: A huge help to the YAF.NET community!

Joined: 1/14/2010(UTC)
Posts: 925

Thanks: 251 times
Was thanked: 170 time(s) in 161 post(s)
bbobb, tha_watcha, and Jaben are the only developers who have access to the 'master' source branch. It's been that way for several years now. When I run builds on my Visual Studio it takes all of about 2 minutes to build the entire solution and test --

Anytime I have enhancements, I actually post the code here on the forums and let them include it if they are going to -- then it appears in a day or so in my SVN and it's added.

While the application is open source, it is pretty tied down with who has direct access to adding to the source packages. I think a small part of that is that YAF does have offerings for commercial clients, and as such - any code changes have to go through testing purposes with Jaben (and bbobb as he is the SQL master here) - between them, they perform most of the code testing initially before adding to GIT - then it goes through the Alpha/Beta/RC process as most other apps do normally.

I don't know about GIT bit with Tortoise, there are files I set that are not to be compared against the master (such as the SLN and CSPROJ files) - then Tortoise doesn't complain when I make changes.

As an example, when I do my work, I have my local repository, and I have a development tree outside of that. Any changes I make I do to my dev tree. When they successfully compile and run, I'll submit changes to either the forum or submit a pull request with the changed files -- and then they will appear (if used) in my SVN later on. This keeps my 'local development' untangled from the repository while still allowing me access to everything. I understand how this can make more work - but in the end, I believe much of it is done to protect the integrity of the source code.

Jaben, tha_watcha, and bbobb may further clarify or have more solutions than I do. I'm not a part of the development team directly - I'm in the support area <grin> - but I do from time to time post patches to help them out where I can --

If you're looking to join the dev team directly, you'll have to get with Jaben as he's the current (and longtime) project leader - he's the only one who can add more devs to the team that I know of, and I don't know what his rules are for taking on more devs. I know he's definitely open to the discussion - just that he's beyond busy lately.

Hope this helps, and if there's more I can do - let me know --
If you can't find it using the forum search, try my signature link -- searches this site using Google: Google is my Friend
thanks 1 user thanked squirrel for this useful post.
tirion on 9/6/2013(UTC)
Offline tirion  
#6 Posted : Friday, September 6, 2013 3:01:09 PM(UTC)
tirion


Rank: YAF Forumling

Reputation:

Joined: 8/31/2013(UTC)
Posts: 7

Thanks: 6 times
Yeah - thanks for your detailed answer - it's in line with what I expected.

I definitely don't expect/want to have access to master tree or whatever - just want to make sure that I develop in a way that's compatible to what other guys are doing. I just don't want to waste time figuring out solution on my own that may prove to be incompatible to what other devs are doing.

Thanks again and I guess I'll just wait for Jaben's response.
Offline tha_watcha  
#7 Posted : Friday, September 6, 2013 4:41:04 PM(UTC)
tha_watcha


Rank: YAF.NET Project Lead

Reputation:

Medals: Medal of Honor: Portal Puzzle Master: Portal Puzzle Master for DNNMedal of Honor Key: Given to pillars of the community who are key players in the YAF community and project.DNN Master: DNN Module ManBug Killer Medal of Honor: Medal for being a kick-ass bug killer!Medal of Honor for the Support King: Support King! Amazing asset to the YAF.NET Community.

Joined: 3/6/2010(UTC)
Posts: 3,735
Germany

Thanks: 70 times
Was thanked: 1149 time(s) in 979 post(s)
In GIT you can fork our repository and push your changes in to it. From there you can submit a pull request

https://help.github.com/.../creating-a-pull-request
thanks 1 user thanked tha_watcha for this useful post.
squirrel on 9/6/2013(UTC)
Offline Jaben  
#8 Posted : Monday, September 9, 2013 9:21:10 AM(UTC)
Jaben


Rank: YAF Developer

Reputation:

Medals: Medal of Honor Key: Given to pillars of the community who are key players in the YAF community and project.YAF.NET Supporter: Loves YAF.NET!YAF.NET Supporter: Supports our efforts. Thank you.Medal of Honor for the Support King: Given to a community member who tirelessly answers tons of support questions.

Joined: 10/9/2004(UTC)
Posts: 2,549
Location: United States

Thanks: 142 times
Was thanked: 358 time(s) in 199 post(s)
@tirion: there is no magic solution to merging and dealing with different code changes. The fork system is actually quite excellent in that you can choose when and how you merge your changes. That is my recommendation, yes.

Not sure you concern with your local repo -- you are not allow to "commit" anything, anyway -- so there nothing to "ignore" as your commits would be local.
Offline boytrum  
#9 Posted : Wednesday, April 22, 2015 9:40:42 PM(UTC)
boytrum


Rank: YAF Forumling

Reputation:

Joined: 4/22/2015(UTC)
Posts: 1
Location: d2

it is slow Sad
Offline Zero2Cool  
#10 Posted : Thursday, April 23, 2015 6:00:58 AM(UTC)
Zero2Cool


Rank: YAF Leader

Reputation:

Medals: Medal of Honor for the Support Knight: Given to a community member who has assisted lots and lots of people!

Joined: 4/26/2011(UTC)
Posts: 1,062
Man
United States
Location: in a van down by the river

Thanks: 234 times
Was thanked: 101 time(s) in 92 post(s)
Originally Posted by: boytrum Go to Quoted Post
it is slow Sad


What is slow?
Rss Feed  Atom Feed
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Notification

Icon
Error